我测试了我的javascript界面在android 2.3,4.0,4.1设备中完美运行 但不适用于4.2.2的星系S4 我试着从index.html调用我的原生界面 onload但它说对象未定义。
我从浏览器调用此功能
window.onload = function() {
window.jsinterface.getSomeString("testing from index.html");
}
我在接收数据的活动中的这行代码
final class JavaScriptInterface {
JavaScriptInterface() {}
public void getSomeString(String data) {
Log.d("yahoo", "DAta" + data);
Toast.makeText(Testing.this, "getsomestring:"+data, Toast.LENGTH_SHORT).show();
}
}
任何从浏览器发送数据的建议,除了这种方法对我也有帮助。 或指导我做什么。
答案 0 :(得分:6)
如果您的android:targetSdkVersion
设置为17或更高,则需要将@JavascriptInterface
注释添加到getSomeData()
,如in the documentation所述。