Есть ли документация, касающаяся 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