我能夠使用我的phonegap java腳本函數和android 2.2 中的java函數,但是相同的代碼不在API 17上運行。我應該怎麼做才能調用native從Java的Java腳本API中對代碼17appView.addJavascriptInterface()不適用於API 17
我在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這段代碼把它給我錯誤
遺漏的類型錯誤:對象的翻譯:有沒有方法「登錄」的文件:///android_asset/www/index.html:81
我如何我使用這個API上17
可以使用不是問題的構造函數。 – gregory561 2013-08-07 12:47:07
no probs與構造函數,但它沒有必要在這一點, – benka 2013-10-30 14:15:49
我可以證實,構造函數沒有問題。條件是方法必須有註解** @ JavascriptInterface **並且是** public **。 – nacho4d 2016-06-22 07:04:35