PhoneGap中文网

 找回密码
 立即注册
查看: 18397|回复: 3
打印 上一主题 下一主题

cordova、ionic回调exec传递多参数的问题,格式不懂

[复制链接]

1

主题

3

帖子

21

积分

新手上路

Rank: 1

积分
21
跳转到指定楼层
楼主
发表于 2016-4-25 13:00:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 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数据}");




回复

使用道具 举报

1

主题

3

帖子

21

积分

新手上路

Rank: 1

积分
21
沙发
 楼主| 发表于 2016-4-25 13:12:30 | 只看该作者
文章的格式做的真水
回复 支持 反对

使用道具 举报

11

主题

529

帖子

1418

积分

金牌会员

Rank: 6Rank: 6

积分
1418
板凳
发表于 2016-4-25 20:21:31 | 只看该作者
回复 支持 反对

使用道具 举报

1

主题

3

帖子

21

积分

新手上路

Rank: 1

积分
21
地板
 楼主| 发表于 2016-4-27 14:02:40 | 只看该作者
ionicwang 发表于 2016-4-25 20:21
http://bbs.phonegap100.com/thread-1160-1-1.html  这个看看

你好,我看了你的链接,传递的不是多个参数,而且是自动的写上去,不是通过controller传的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2025-1-4 18:22 , Processed in 0.074930 second(s), 34 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表