-3

Web ビューからバージョン 2.3.3 を使用すると、結果の文字列が 1364311909 になります。

しかし、同じ 4.0 以降では、1.36431e+09 という異なる形式の文字列値を取得しています

値は、Web View Android Frame Workを使用してjavascriptからwebviewに渡されます

JavaScript enable で使用される Webview :

myWebView.getSettings().setPluginState(PluginState.ON);
                        System.out.println("default encoding state is...."+myWebView.getSettings().getDefaultTextEncodingName());
                        myWebView.getSettings().setJavaScriptEnabled(true);

                        myWebView.loadUrl("the Url");  

値を取得するための JavaScript コードは次のとおりです。

public void changeIntent(final String updateId) {


        showToast(updateId);


         //* addToUpdatesId(updateId);
        Runnable runnable = new Runnable() {
            public void run() {
                // your code here
                Intent intent = new Intent(mContext,XXX.class);



                String allId= updateId;
                Global.setUpdateId(updateId);




                intent.putExtra(UPDATESID, allId);

                mContext.startActivity(intent);
            }
        };

        runOnUiThread(runnable); 


    }

この問題を解決する方法。教えてください

4

1 に答える 1

0

私たちはそれを解決しました

Java Script は常に高精度値を取得し、文字列の末尾に指数関数を追加します

これを解決するには、渡す元の文字列に空の文字列を追加して、文字列を返します。like String s= 元の文字列+""; 戻り値;

乾杯......!!!!!!!!!!!

于 2013-04-02T04:31:38.503 に答える