美文网首页
cordova神bug:CordovaPlugin: Attem

cordova神bug:CordovaPlugin: Attem

作者: 满船清梦___ | 来源:发表于2019-06-12 17:29 被阅读0次

    1 . 描述
    前端Cordova .exec传入的回调无法接收到安卓端的消息
    安卓端在接收到调用后, 在双层嵌套的handler里发出success消息

    public void sendPluginResult(PluginResult pluginResult) {
            synchronized(this) {
                if (this.finished) {
                    Log.w("CordovaPlugin", "Attempted to send a second callback for ID: " + this.callbackId + "\nResult was: " + pluginResult.getMessage());
                    return;
                }
    
                this.finished = !pluginResult.getKeepCallback();
            }
    
            this.webView.sendPluginResult(pluginResult, this.callbackId);
        }
    

    3.解决
    发现有cordova.exec(null,null, "gcPlugin", "log", data);
    怀疑null覆盖了其他调用传入的回调函数,
    修改为非空alert,
    发现未调用替换的alert, 而是调用原有回调

    1. 原理
      待续......................

    相关文章

      网友评论

          本文标题:cordova神bug:CordovaPlugin: Attem

          本文链接:https://www.haomeiwen.com/subject/ehfrfctx.html