我是Cordova的新手,在使用Cordova网络视图时,我想了解如何在我的Android应用中捕获从JS触发的事件。
我有这个类实现了CordovaInterface并且具有这个功能(我想接收事件):
@Override
public void setActivityResultCallback(CordovaPlugin cordovaPlugin)
{}
我成功实现了嵌入了JS游戏的Web视图。 假设我在该界面中接收事件如何区分事件,以便我适当地处理每个事件?
寻找一些有助于我入门的代码示例或参考资料
答案 0 :(得分:0)
首先,您需要在config.xml中声明自定义插件。你可以在res>中找到这个文件。 xml文件夹。
<feature name="CustomPlugin">
<param name="android-package" value="com.Phonegap.CustomPlugin" />
</feature>
然后你需要使用Java代码
来实现插件public class CustomPlugin extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext)
throws JSONException {
if (action.equals("sayHello")){
try {
String responseText = "Hello world, " + args.getString(0);
callbackContext.success(responseText);
} catch (JSONException e){
callbackContext.error("Failed to parse parameters");
}
return true;
}
return false;
}
}
最后我们从javascript调用一个插件
function initial(){
var name = $("#NameInput").val();
cordova.exec(sayHelloSuccess, sayHelloFailure, "CustomPlugin", "sayHello", [name]);
}
function sayHelloSuccess(data){
alert("OK: " + data);
}
function sayHelloFailure(data){
alert("FAIL: " + data);
}