收藏
回答

关于setMessageToFriendQuery的使用?

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小游戏 需求 setMessageToFriendQuery shareMessageToFriend 微信iOS客户端 1.02.1911082 2.9.1

通过定向分享(modifyFriendInteractiveStorage)后,分享人怎么得知被分享人是否进入游戏,文档上提供的setMessageToFriendQuery用法不是很明确,shareAppMessage的query是一个string,而setMessageToFriendQuery文档中写的shareMessageToFriendScene类型是number,请问一下用哪个接口可以得知被分享人是否进入游戏。


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

1 个回答

  • SINB
    SINB
    11-13

    setMessageToFriendQuery 的调用形式为:

    wx.setMessageToFriendQuery({
      shareMessageToFriendScene: 50
    })

    最后传给被分享人的 query 实际上是 'shareMessageToFriendScene=50'

    被分享者拿到的 launchInfo 里的 query 是 querystring to object 之后的结果

    被分享者使用 wx.modifyInteractiveStorage(带上 quiet = true),无需填入 openId,修改的是分享的数据,所以分享可以知道

    相关接口建议关注一下文档:

    https://developers.weixin.qq.com/minigame/dev/api/share/wx.setMessageToFriendQuery.html

    https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.modifyFriendInteractiveStorage.html

    11-13
    赞同 2
    回复 7
    • 戴维
      戴维
      11-14
      谢谢,按照你说的方法成功执行了
      11-14
      回复
    • 光辉
      光辉
      12-03
      修改了分享者的数据,分享者需要getUserInteractiveStorage得到数据来检查是否被修改吗,还是onInteractiveStorageModified可以监听的到?
      12-03
      回复
    • SINB
      SINB
      12-03回复光辉
      onInteractiveStorageModified只能是谁发起的谁能监听到,说白了就是modify的success回调从开放数据域发到了游戏域
      想知道是否被修改是需要getUserInteractiveStorage,或者在后端脚本上做检测之类的
      12-03
      回复
    • 光辉
      光辉
      12-04
      好的,谢谢。那我还在游戏的时候,好友通过分享进了游戏我得到了奖励能在那一刻显示出来吗?还是每隔一段时间去检查我的互动数据有没有修改,修改了就证明好友进了游戏?
      12-04
      回复
    • 光辉
      光辉
      12-04
      wx.setFriendUserStorage(myOpenid, [{ 
      key: giftStorageKey, 
      value: JSON.stringify(selfGift) 
      }])中value可以存openid吗
      12-04
      回复
    查看更多(2)