评论

第三方小程序涉直播代码上传经验总结

第三方小程序涉直播代码上传经验总结

一直以来作为第三方服务商为商户运营小程序时,使用的是 复用公众号主体快速注册小程序 ,这种方式创建小程序很快速,商户也不需要去记录小程序帐号信息,我们维护小程序代码时也很容易,一套代码,有升级时自动去全网更新。

一切执行起来都挺和谐的,直到直播功能出现后,这份安宁被打破了

1、原来的商户无小程序帐号,变成一种羁绊了。好在还可以引导商户扫描《小程序助手》小程序码,设置登录邮箱;或在微信公众平台,通过找回帐号的方式获得;

2、小程序模板不能一蹴而就了,还得区分商户是否有开通小程序直播插件;

3、新的小程序要开通直播功能,必须经历①设置登录邮箱(或找回帐号)→②上传不带直播的代码→③发起小程序支付→④开通小程序插件→⑤上传带直播的代码 这样一串长流程。

能一次就解决的问题都不算问题,最大的问题是代码管理,如果非得分成2套代码来管理,对于程序员来讲确实有点痛苦,如果再来一个类似直播的插件,那不得分4套代码,接着8套代码,16套代码,那不得逼疯程序员。

好在小程序有为第三方提供ext_json,用来区分不同商户,有了它,我们就可以1套代码搞定不同的商户了。具体操作如下:

1、app.json中去掉插件相关引入代码

2、上传小程序代码前获取商家已经开通的插件列表

https://api.weixin.qq.com/wxa/plugin?access_token=     post参数{"action":"list"}

再判断是否已经开通相关插件,如直播插件的appid为wx2b03c6e691cd7370,那么可以判断返回的插件list字符串是否包含该appid。

如果有开通,则extJson中插入该插件的引用(plugins开始的这串)

{\"ext\":{\"你自己定义的扩展参数\":\"扩展参数值\",\"haveLive\":1},\"plugins\": {\"live-player-plugin\": {\"version\": \"1.0.16\", \"provider\": \"wx2b03c6e691cd7370\"}},\"recompile\": true}

如果没有开通则extJosn为

{\"ext\":{\"你自己定义的扩展参数\":\"扩展参数值\",\"haveLive\":0}}

3、上传代码时传入ext_json

https://api.weixin.qq.com/wxa/commit?access_token=  post参数  {"template_id":模板ID,"ext_json":"2中返回的json字符串","user_version":"版本号","user_desc":"版本描述"}

4、在小程序中通过 wx.getExtConfig 获取参数 haveLive, 当为0时,表示没有开通直播插件,这时候需要隐藏所有可能出现直播相关的界面。不然小程序审核时会被驳回,要求类目要增加选择“社交 → 直播”类目(因为有直播相关功能,却没有开通小程序直播插件。在小程序中要使用直播功能,要么使用官方提供的小程序直播插件;要么设置类目为“社交 → 直播”后,使用其他途径进行直播

最后一次编辑于  2020-07-07  
点赞 0
收藏
评论

9 个评论

  • L
    L
    2020-07-27

    你好,请问其他页面的json文件中,与直播代码相关的怎么去掉。例如有页面的json引入了直播订阅消息的组件 。

    2020-07-27
    赞同 1
    回复
  • Randy
    Randy
    2020-12-10

    同一套代码(有直播相关逻辑) 分别给两个小程序发 一个有直播权限 另一个没有

    通过ext.json动态判断加 plugin ,三方里给没直播权限小程序代码上传还是报错

    "info": "miniprogram has no permission to plugin[wx2b03c6e691cd7370] rid: 5fd1923d-5faff214-023af290",
                "data": {
                    "errcode": NumberInt("80082"),
                    "errmsg": "miniprogram has no permission to plugin[wx2b03c6e691cd7370] rid: 5fd1923d-5faff214-023af290"
                }
    


    请问下你们有遇过没?

    2020-12-10
    赞同
    回复
  • Lily
    Lily
    2020-09-17

    有代码案例可以参考吗

    2020-09-17
    赞同
    回复
  • 周毛毛
    周毛毛
    2020-09-08

    请问类目设置为“社交 → 直播”后,小程序上架申请是不是要特别的资质证明?

    2020-09-08
    赞同
    回复
  • Season
    Season
    2020-09-04

    请问直播插件更新的话,用这一个第三方动态提交会更新,但是如果当当只要更新插件版本的话,之前那一个更新就不能更新是这样吗?

    2020-09-04
    赞同
    回复
  • 洞洞滨
    洞洞滨
    2020-08-12

    同问:app.json中的plugins可以被ext.json取代,那页面中的订阅组件引入怎么解决呢。当不支持直播时不引入订阅组件 好像没办法做到。

    2020-08-12
    赞同
    回复
  • Estate
    Estate
    2020-07-29

    大佬您好,上传代码是后端上传判断加入直播代码 ,还是前端判断

    这个引入的要怎么判断显示隐藏呢

    2020-07-29
    赞同
    回复 1
    • Randy
      Randy
      2020-12-10
      有这样的代码 你们可以给非直播权限的小程序传上去吗?
      2020-12-10
      回复
  • 。
    2020-07-20

    麻烦问下,在ext.json中动态插入直播插件,这样是将插件放置到主包中了吧

    2020-07-20
    赞同
    回复 2
    • 烟斗
      烟斗
      2020-07-20
      是的,但是插件不占用包容量
      2020-07-20
      回复
    • 。
      2020-07-21回复烟斗
      你的意思是在extjson中动态引入的插件不占用主包大小吗?
      2020-07-21
      回复
  • 付云伟 楚粤集团
    付云伟 楚粤集团
    2020-06-21

    有偿求帮助,帮忙接入小程序直播代码



    2020-06-21
    赞同
    回复
登录 后发表内容