【发布时间】:2013-04-27 12:48:21
【问题描述】:
我可以从我的 phonegap java 脚本函数和 android 2.2 中使用 java 函数 但相同的代码没有在 API 17 上运行。我应该怎么做才能从 API 17 中的 java 脚本调用本机 java 代码。
我在我的 java 文件中使用此代码
objCustomNativeAccess = new CustomNativeAccess(this, appView);
appView.addJavascriptInterface(objCustomNativeAccess,
"CustomNativeAccess");
super.loadUrl("file:///android_asset/www/index.html");
我的 CustomNativeAccess 类是
public class CustomNativeAccess {
private WebView mAppView;
private DroidGap mGap;
/**
* Constructor
*
* @param gap
* @param view
*/
public CustomNativeAccess(DroidGap gap, WebView view) {
mAppView = view;
mGap = gap;
}
/**
* Get the device phone number
*
* @return
*/
public JSONObject login(String email, String password) {
JSONObject object = new JSONObject();
object.put("Login_Status", login_status);
object.put("date", dateString);
return object;
}
在我的 java 脚本中,我使用这一行来调用这个登录函数
var value = window.CustomNativeAccess.login(email,pass);
所以使用这个我在 api 2.2 上成功调用了这个,但是当我在 api 17 上运行这个代码时它给了我错误
Uncaught TypeError: Object [object Object] has no method 'login' at file:///android_asset/www/index.html:81
我如何在 api 17 上使用它
【问题讨论】:
标签: java javascript android cordova