2012-03-15 12 views
2

私は私のアプリケーションのJavaコードからJavaViewにWebViewのJavascriptに多くの整数を転送する必要があるAndroidアプリを書いているので、ユーザに表示されます。Androidの方が速い:loadUrlを使用してWebViewにデータを送信するか、JavascriptInterfaceを使用してWebViewからデータを取得するか?

私はこの文字列を転送する二つの方法を参照してください。WebViewの上loadUrlを使用して

  • :int型を含む配列data

を、私は私にそれらを転送するために、このコードを使用しますwebview。 JavascriptInterfaceを使用して

webView.loadUrl("javascript:loadData(" + data[0] + ");"); // data[0] is an int 
webView.loadUrl("javascript:loadData(" + data[1] + ");"); // data[1] is an int 
// etc. 

は、私はちょうどdata[x]の値を返すgetData(int x)という名前のメソッドを、data配列を保持し、公開するJavaクラスを持っています。

webView.addJavascriptInterface(backend, "dataBackend"); 

私の質問はこれです:アプローチは高速である方法はどのそれを呼び出してデータを取得することができ、私のJavascriptのコードに見えるように、私はJavascriptInterfaceを宣言することができますか?私はに多くの要素があると、loadUrl()呼び出しをたくさん実行するのが遅く、バグがあると思います。しかし、代替手段はより速く動作しますか?

答えて

0

一般に、loadUrlとjsInterfaceの両方は、大量のデータを転送することは想定されていません。しかし、それらの整数から1つの大きな文字列を作成し、代わりに使用することができます。

関連する問題