# 定向分享

提供给定向分享能力,支持用户游戏内向指定好友发起分享。

../assets/images/share-message-to-specific-friend.png

使用 定向分享能力 ,可实现的场景举例:

以下描述中,金币、皮肤为游戏数据,点赞数为托管数据。 A 与 BC 为好友。 B 为游戏注册用户;C 为游戏流失或未注册用户。

游戏场景 具体做法
A 向 B 分享 炫耀成绩超越
A 向 B 分享 求助帮忙通过第50关
A 向 B 分享 索要皮肤道具,B进入游戏给A赠送 皮肤道具 需结合 关系链互动数据 能力
A 向 C 分享 邀请加入游戏。C 进入游戏后,A 金币+1,C 金币+1 需结合 关系链互动数据 能力

# 相关接口

  1. 定向分享:mogs.shareMessageToFriend
  2. 主域设置定向分享参数:mogs.setMessageToFriendQuery

# 使用步骤

  1. 主域设置定向分享参数,例如:
mogs.setMessageToFriendQuery {
  shareMessageToFriendScene: 2
}

1
2
3
4
  1. 开放域中调用定向分享接口 mogs.shareMessageToFriend,
  2. 被邀请者的运行环境获取当前分享场景参数,并传递给子域,例如:
const query = mogs.getLaunchOptionsSync().query;

if (query.shareMessageToFriendScene === 2) {
    ...
    // 传递给子域
}

1
2
3
4
5
6
7
  1. 子域中赠送互动道具给邀请者
await interactivePropertySystem.sendInteractiveProperty({
    name: "name_1",
    // toUserOpenid: toOpenid, //从邀请活动中过来的,无需传入toUserOpenId, 微信自己会填 https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.modifyFriendInteractiveStorage.html
    // quiet: true, //从邀请活动中过来的,quiet 可以设置为true, 是否静默修改(不弹框)。当进入场景是好友 定向分享 的卡片时有效,代表分享反馈操作,此时 toUser 默认为原分享者的 openId
});
1
2
3
4
5