WebView JavaScript Bridge Документация - PullRequest
4 голосов
/ 08 февраля 2011

Есть ли документация, касающаяся WebView JavaScript Bridge? Я ищу документацию, описывающую возможности и поддерживаемые типы данных для методов, определенных в JavascriptInterface.

Например, если я определю следующее:

public class JavaScriptInterface {

    public int incrementNumber(int num) {
       return num + 1;

}

Если я вызываю этот метод из JavaScript и запускаю его в эмуляторе, кажется, все работает нормально. Если я запускаю это на моем NexusOne, переданный в аргументе «num» всегда равен «0».

Если я изменю вышеприведенное на:

 public class JavaScriptInterface {

    public int incrementNumber(String num) {
       // Leaving out try/catch
       int tempNum = newRadius = Integer.parseInt(num);
       return tempNum + 1;

}

... кажется, все работает. Поэтому мне интересно, если аргументы метода JavaScriptInterface должны / могут иметь только тип String?

Соответствующие ресурсы: http://developer.android.com/reference/android/webkit/WebView.html http://developer.android.com/reference/android/webkit/WebView.html#addJavascriptInterface(java.lang.Object, java.lang.String) http://code.google.com/apis/maps/articles/android_v3.html

Ответы [ 2 ]

1 голос
/ 13 мая 2011

Единственный соответствующий официальный документ находится здесь: http://developer.android.com/guide/webapps/webview.html Но нет описания о доступных типах

1 голос
/ 08 февраля 2011

Вы можете либо запросить строковые аргументы на стороне Java, либо убедиться, что числа являются действительными числами (а не текстовыми версиями чисел - см. about.com - JavaScript: строки в числах ) на стороне JavaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...