第三方小程序涉直播代码上传经验总结
发布于 4 年前 作者 sunfang 3170 次浏览 来自 分享

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

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

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

1 回复

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


回到顶部