|
本帖最后由 a2833623 于 2016-4-25 13:11 编辑
1、Controller中配置的发送数据......
$scope.toastShow=function () {
navigator.intent.toastShow("js To android数据");
};
toastShow我要发给android两个参数的数据或者更多的话,怎么传;
2、下面是配置发送给android的数据
cordova.define("org.apache.cordova.intent", function(require, exports, module) {
var exec = require('cordova/exec');
module.exports = {
/**
* 一共5个参数
第一个 :成功会掉
第二个 :失败回调
第三个 :将要调用的类的配置名字(在config.xml中配置 稍后在下面会讲解)
第四个 :调用的方法名(一个类里可能有多个方法 靠这个参数区分)
第五个 :传递的参数 以json的格式
*/
toastShow: function(mills) {
exec(function(winParam){
alert(winParam);//执行成功,android 返回的数据,是类中callbackContext.success传递的参数</span>
},function (errorParam) {
alert(errorParam);
}, "DivPlugin", "toastShow", [mills]);
},
};
});
3、android方面的接受方法[size=15.0666666030884px] [size=15.0666666030884px]
[size=15.0666666030884px]
[size=15.0666666030884px][size=15.0666666030884px] [size=15.0666666030884px][size=15.0666666030884px] [size=15.0666666030884px] @Override public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
//匹配的是方法的名字
if (action.equals("toastShow")) {
String message = args.getString(0);
String message2 = args.getString(1);
LOG.i("DivPlugin", message2);
Toast.makeText(cordova.getActivity(),message, Toast.LENGTH_LONG).show();
this.echo(message, callbackContext);
return true;
}
return false;
}
[size=15.0666666030884px]
[size=15.0666666030884px]4、情况分析
[size=15.0666666030884px]没问题的情况:
[size=15.0666666030884px]1、没有问题的传一个参数的时候:[size=15.0666666030884px]
navigator.intent.toastShow("js To android数据js To android数据");
[size=15.0666666030884px] 或者具体配置参数,没有扩展性:
[size=15.0666666030884px] [size=15.0666666030884px] toastShow: function(mills) { exec(function(winParam){
alert(winParam);//执行成功,android 返回的数据,是类中callbackContext.success传递的参数</span>
},function (errorParam) {
alert(errorParam);
}, "DivPlugin", "toastShow", ["fdf","dfd"]);
},
};
2、有问题的情况:[size=15.0666666030884px]下面两个情况都有问题;1、navigator.intent.toastShow("[size=15.0666666030884px]js To android数据","[size=15.0666666030884px]js To android数据2"); 2、navigator.intent.toastShow("{js To android数据,js To android数据}");
|
|