评论

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

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

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

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

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时,表示没有开通直播插件,这时候需要隐藏所有可能出现直播相关的界面。不然小程序审核时会被驳回,要求类目要增加选择“社交 → 直播”类目(因为有直播相关功能,却没有开通小程序直播插件。在小程序中要使用直播功能,要么使用官方提供的小程序直播插件;要么设置类目为“社交 → 直播”后,使用其他途径进行直播

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

8 个评论

  • L
    L
    07-27

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

    07-27
    赞同 1
    回复
  • Lily
    Lily
    09-17

    有代码案例可以参考吗

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

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

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

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

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

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

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

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

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

    07-29
    赞同
    回复
  • 。
    07-20

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

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

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



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