我正在开发一个 Phonegap 应用程序(在 Android 上),我用 Phonegap 2.2 更新了我的应用程序。不幸的是,现在我在使用 Javascript 接口时遇到错误。
Uncaught Error: Error calling method on NPObject. at file:///android_asset/www/dossier_med_list.html#/android_asset/www/dossier_med_new.html:22
使用 Javascript 接口函数时发生错误:
var tel = window.language_classe.getSystemPhoneNumber() ;
这就是类的制作方式:
import org.apache.cordova.DroidGap;
import android.content.Context;
import android.telephony.TelephonyManager;
import android.webkit.WebView;
public class LanguageClass {
private WebView mAppView;
private DroidGap mGap;
private Context mContext;
public LanguageClass( DroidGap gap, WebView view, Context context) {
mAppView = view;
mGap = gap;
mContext = context;
}
public String getSystemPhoneNumber() {
TelephonyManager tMgr = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);
return tMgr.getLine1Number();
}
}
这就是我初始化我的应用程序的方式:
public class App extends DroidGap
{
private LanguageClass language;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
language = new LanguageClass(this, appView, this.getBaseContext());
appView.addJavascriptInterface(language, "language_classe");
super.setIntegerProperty("loadUrlTimeoutValue", 60000);
super.setIntegerProperty("splashscreen", R.drawable.splash);
super.loadUrl("file:///android_asset/www/accueil.html", 150000);
}
}
任何线索为什么会发生这种情况?我在文档中没有看到任何关于此问题的内容,并且在更新到 Phonegap 2.2.0 时我没有更改此功能的任何内容。
谢谢你的帮助。