我想写一个新的cordova插件,我需要更改MainActivity,如何只使用plugin.xml
?
答案 0 :(得分:0)
你不能只使用plugin.xml。您需要设置3件事。
你需要使用cordova.exec API才能在javascript代码和android活动之间进行通信。
首先需要在config.xml中声明自定义插件
<feature name="CustomPlugin">
<param name="android-package" value="com.AndroidApacheCordovaPlugin.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);
}