# 分享数据到微信运动

从基础库 2.14.0 开始支持

可将用户在小程序内的运动数据分享到微信运动。

# 申请开通

小程序管理后台,「开发」-「接口设置」中自助开通该组件权限。 只针对「体育-在线健身」类目的小程序开放。

# 调用流程

开发者通过调用wx.shareToWeRun传入用户的运动数据,会触发弹窗,用户点击确定后即可在微信运动排行榜与详情页中展示运动数据。 avatar

# 注意事项

  1. 对于开发版和体验版小程序,可以在小程序内正常调用该接口,但不会展示到微信运动中。开发者在开发时可以以调用接口是否成功作为是否打卡成功的依据。
  2. 用户每次打卡都会记录到微信运动中,请开发者妥善处理用户打卡成功的场景,避免重复打卡。
  3. 微信运动排行榜中,展示的是最近一次打卡的第一条记录。

# 运动类型

当前支持以下运动类型的与不同运动类型支持传入的单位如下:

运动类型 typeId 支持传入单位
锻炼 1001 time/calorie
体能训练 1002 time/calorie
功能性训练 1003 time/calorie
瑜伽 2001 time/calorie
钓鱼 2002 time/calorie
广场舞 2003 time/calorie
踢足球 2004 time/calorie
打篮球 2005 time/calorie
打羽毛球 2006 time/calorie
打乒乓球 2007 time/calorie
打网球 2008 time/calorie
跑步 3001 time/distance/calorie
登山 3002 time/distance/calorie
骑车 3003 time/distance/calorie
游泳 3004 time/distance/calorie
滑雪 3005 time/distance/calorie
跳绳 4001 number/calorie
俯卧撑 4002 number/calorie
深蹲 4003 number/calorie

设置时最多传入一个单位,不支持同时传入多个单位。不同单位支持传入的数量限制如下:

单位 说明 有效值
number 运动个数,单位:个 有效值1-10000,需为整数
distance 运动距离,单位:米 有效值1-100000,需为整数
time 运动时间,单位:分钟 有效值1-1440,需为整数

# 代码示例

wx.shareToWeRun({
      recordList: [{
        typeId: 4001,
        number: 180
      }, {
        typeId: 3001,
        distance: 100000
      }],
      success(res) {
        wx.showToast({
          title: '打卡成功',
        })
      },
      fail(res) {
        wx.showToast({
          icon: "none",
          title: '打卡失败',
        })
      }
    })