我使用PhoneGap开发应用程序。我有一个后台服务,是原生代码编写的(服务和PhoneGap应用程序在同一个项目中)。不幸的是,我想从这个服务调用一个JavaScript函数。于是我在网上搜索并找到了一些有趣的东西:创建一个扩展Plugin的类,并在其中进行一些处理。然后我找到了这个:
this.ctx.sendJavascript("myJavascriptFunction");
我用了这段代码进行测试,但是出现了一些问题:
java.lang.NullPointerException
这是我的测试方法:
class c = new class();
c.execute("myFunction",null,null);
在C类中,执行方法如下:
public PluginResult execute(String action, JSONArray args, String callbackId) {
if (action.equals("myFunction")){
Log.d(TAG,"start actions to do");
this.ctx.sendJavascript("nameOfFunctionToLaunch");
Log.d(TAG,"end actions to do");
return new PluginResult(PluginResult.Status.OK);
}
}
当应用程序启动时,我有第一个。
Log.d(TAG,"start actions to do");
我该如何解决这个问题?
javascript:someFunction();
这样的 JavaScript URL 吗? - dtandersobject.loadUrl("javascript:function();");
- Erwan