收藏
回答

请问实时数据推送,在手机端报错怎么处理?

框架类型 问题类型 终端类型 AppID 环境ID 基础库版本
小游戏 Bug 微信安卓客户端 wx14259901c1396da6 findtheone-74b5l Wechat Lib:2.11.2, 2020.6.10 23:33:21

刚刚好了没几天,又出现了这样的问题了,还是云开发数据库watch监听的bug,请官方管理员来看一下。

下面是6月12日发的求助内容:

昨天上午还好好的,晚上就报错了。调试了整晚,手机端还是这个错误。偏偏在微信开发者工具上是正常的。

这是由手机端监听云开发数据库引发的错误,我把监听函数注释掉,就不报这个错误信息了。

Uncaught (in promise) FrameworkError <TypeError: Cannot add property Map, object is not extensible>

&lt;TypeError: Cannot add property Map, object is not extensible&gt;<div class="eruda-json eruda-hidden"></div>

at e.value (wagame://servicewechat.com/WAGameVConsole.html:27576:37895)

at new e (wagame://servicewechat.com/WAGameVConsole.html:27576:36659)

at t.value (wagame://servicewechat.com/WAGameVConsole.html:27576:32217)

at t.value (wagame://servicewechat.com/WAGameVConsole.html:27576:31461)

at f.e.<computed> [as error] (wagame://servicewechat.com/WAGameVConsole.html:27576:16382)

at wagame://servicewechat.com/WAGameVConsole.html:27576:19192

at Array.forEach (<anonymous>)

at console._log (wagame://servicewechat.com/WAGameVConsole.html:27576:19080)

at <anonymous>:1:9


代码片段:

var db = wx.cloud.database();

var watcher1 = db.collection('game_rooms');

//监听游戏房间玩家信息更新情况:

      if (nowRoom.roomID != "" && G.inRoom == 1) {

        console.log("nowRoom.roomID",nowRoom.roomID);

        watcher1.where({

          _id: nowRoom.roomID

        }).watch({

          onChange: function(snapshot) {

           console.log('query result snapshot after the event'snapshot.docs);

          // 监听游戏房间数据:玩家1,玩家2,的信息,在此房间的游戏得分,剩余时间

  },

          onError: function (err) {

            console.error('the gameRoom watch1 closed because of error'err)

          }          

        });

      }


报错信息:

the gameRoom watch1 closed because of error <Error: errCode: -402012 realtime listener init ws fail | errMsg: errors of each retry (latest to oldest): ["[object Object]","TypeError: Cannot add property Map, object is not extensible","TypeError: Cannot add property Map, object is not extensible","TypeError: Cannot add property Map, object is not extensible","TypeError: Cannot add property Map, object is not extensible","TypeError: Cannot add property Map, object is not extensible"] history states: UNINIT-(close)->CLOSED>

最后一次编辑于  06-16
回答关注问题邀请回答
收藏

1 个回答

  • Tarzan Dong
    Tarzan Dong
    06-19

    一模一样的问题,期待答案

    我发现推送老版本基础库到手机端问题就消失了,肯定是基础库什么地方不兼容实时推送的语句了

    06-19
    有用
    回复 9
    • 土厚厚
      土厚厚
      06-19
      请问,如何才能实现推送老版本的基础库到手机端啊?我点了那个按钮,发现手机端没什么改变。
      06-19
      回复
    • Tarzan Dong
      Tarzan Dong
      06-19回复土厚厚
      推送只推给开发者的手机,而且时间只有两小时,之后又恢复新版本了。又不行了
      06-19
      1
      回复
    • 土厚厚
      土厚厚
      06-19
      我试了一下,果然这样。谢谢。估计官方现在是限制使用实时数据推送这个功能了。要强推他们的“游戏联机对战引擎”。
      06-19
      回复
    • Tarzan Dong
      Tarzan Dong
      06-19回复土厚厚
      对战引擎开发者文档在哪?
      06-19
      回复
    • 土厚厚
      土厚厚
      06-19
      https://docs.cocos.com/creator/manual/zh/cocos-service/gme.html
      06-19
      回复
    查看更多(4)
登录 后发表内容
问题标签