跳到主要内容
当前模块客户端 SDK 集成
AI-ready documentation

快捷获取 openid

介绍在没有自建后端的情况下,如何通过引力 SDK 快捷获取微信、抖音、快手、B 站小游戏的 openid,包含后台凭据配置、调用流程与示例。

查看 Markdown

部分客户的小游戏属于单机游戏,没有配套的后端开发人员或者服务器,这种情况下想获取 openid 就较为繁琐,因此引力 SDK 提供了快速获取小游戏 openid 的方法,非 Unity SDK 各平台的具体调用方式见下文,本文档对此进行说明。

微信、抖音、快手、B 站四个平台的差异仅在于:引力后台需要填写的凭据、小游戏官方的登录方法、引力 SDK 提供的获取方法名。下文为各平台非 Unity SDK 的调用流程,Unity SDK 请参考 Unity SDK 快捷获取 openid。

1. 微信小游戏

1.1 前置要求

  1. 在引力后台「设置 → 应用管理 → 配置 → 微信开发者」中,添加小游戏的 AppSecret。

在引力后台添加微信小游戏 AppSecret

请注意:在引力添加好 AppSecret 后,引力可能会使用该 Secret 刷新 access_token,请务必先了解微信 Access Token文档的全部内容。

  1. 升级引力 SDK 到 4.8.18 及以上版本。

1.2 调用流程

每次冷启动过程中,GravityEngine 的实例化方法 new GravityEngine() 与初始化方法 setupAndStart() 均只能被调用一次,clientId 参数必须在这两个方法的其中一个传入。

  1. 先 new GravityEngine(),此时传入的 config 可以不填 clientId。

  2. 然后调用 ge.getWechatOpenId 方法获取 openid。

  3. 然后在获取成功的回调里调用 setupAndStart,传入上面获取的 openid:

    setupAndStart({ clientId: "xxx" })
  4. 然后继续调用 initialize 方法。

调用示例:

wx.login({
  success: (res) => {
    ge.getWechatOpenId(res.code).then((res) => {
      // 这里返回的 res 和官方文档返回的 resp 保持一致,具体请查看下方列出的官方文档中的返回值
      console.log(res);
    }).catch(err => {
      console.log(err);
    })
  }
})

1.3 参考文档

2. 抖音小游戏

2.1 前置要求

  1. 在引力后台「设置 → 应用管理 → 配置 → 抖音开发者」中,添加小游戏的 AppSecret。

在引力后台添加抖音小游戏 AppSecret

请注意:在引力添加好 AppSecret 后,引力可能会使用该 Secret 刷新 access_token,请务必先了解抖音 Access Token文档的全部内容。

  1. 升级引力 SDK 到 4.8.18 及以上版本。

2.2 调用流程

每次冷启动过程中,GravityEngine 的实例化方法 new GravityEngine() 与初始化方法 setupAndStart() 均只能被调用一次,clientId 参数必须在这两个方法的其中一个传入。

  1. 先 new GravityEngine(),此时传入的 config 可以不填 clientId。

  2. 然后调用 ge.getDouyinOpenId 方法获取 openid。

  3. 然后在获取成功的回调里调用 setupAndStart,传入上面获取的 openid:

    setupAndStart({ clientId: "xxx" })
  4. 然后继续调用 initialize 方法。

调用示例:

tt.login({
  success: (res) => {
    ge.getDouyinOpenId(res.code).then((res) => {
      // 这里返回的 res 和官方文档返回的 resp 保持一致,具体请查看下方列出的官方文档中的返回值
      console.log(res);
    }).catch(err => {
      console.log(err);
    })
  }
})

2.3 参考文档

3. 快手小游戏

3.1 前置要求

  1. 在引力后台「设置 → 应用管理 → 配置 → 快手开发者」中,添加小游戏的 AppSecret。

在引力后台添加快手小游戏 AppSecret

  1. 升级引力 SDK 到 4.8.18 及以上版本。

3.2 调用流程

每次冷启动过程中,GravityEngine 的实例化方法 new GravityEngine() 与初始化方法 setupAndStart() 均只能被调用一次,clientId 参数必须在这两个方法的其中一个传入。

  1. 先 new GravityEngine(),此时传入的 config 可以不填 clientId。

  2. 然后调用 ge.getKuaishouOpenId 方法获取 openid。

  3. 然后在获取成功的回调里调用 setupAndStart,传入上面获取的 openid:

    setupAndStart({ clientId: "xxx" })
  4. 然后继续调用 initialize 方法。

调用示例:

ks.login({
  success: (res) => {
    ge.getKuaishouOpenId(res.code).then((res) => {
      // 这里返回的 res 和官方文档返回的 resp 保持一致,具体请查看下方列出的官方文档中的返回值
      console.log(res);
    }).catch(err => {
      console.log(err);
    })
  }
})

3.3 参考文档

4. B 站小游戏

4.1 前置要求

  1. 在引力后台「设置 → 应用管理 → 配置 → B站营销」中,添加小游戏的 Secret Key。

在引力后台添加 B 站小游戏 Secret Key

  1. 升级引力 SDK 到 4.8.18 及以上版本。

4.2 调用流程

每次冷启动过程中,GravityEngine 的实例化方法 new GravityEngine() 与初始化方法 setupAndStart() 均只能被调用一次,clientId 参数必须在这两个方法的其中一个传入。

  1. 先 new GravityEngine(),此时传入的 config 可以不填 clientId。

  2. 然后调用 ge.getBilibiliOpenId 方法获取 openid。

  3. 然后在获取成功的回调里调用 setupAndStart,传入上面获取的 openid:

    setupAndStart({ clientId: "xxx" })
  4. 然后继续调用 initialize 方法。

调用示例:

bl.login({
  success: (res) => {
    ge.getBilibiliOpenId(res.code).then((res) => {
      // 这里返回的 res 和官方文档返回的 resp 保持一致,具体请查看下方列出的官方文档中的返回值
      console.log(res);
    }).catch(err => {
      console.log(err);
    })
  }
})

4.3 参考文档

5. Unity SDK

Unity SDK 的调用方式四个平台完全一致,且需要自行调用 GravityHelper.GetOpenId 方法,请参考 Unity SDK 快捷获取 openid。

本页内容