收藏
回答

服务商代小程序实现业务-发布代码时提示直播组件问题?

我们作为服务商,开发小程序模板后,帮我们的子商户发布小程序。

第一个问题:

最近在小程序上加入了小程序直播功能,主要的代码:

1、app.json

"plugins": {"live-player-plugin": {"version": "1.0.4","provider": "wx2b03c6e691cd7370"} },

2、app.js

let livePlayer = requirePlugin('live-player-plugin')


现在的问题是,我们的子商户,有的已经有小程序直播的权限,有的没有。我们给没有直播权限的子商户发布含以上代码的模板时,会提示错误信息:

miniprogram has no permission to plugin[wx2b03c6e691cd7370] (因为商户没有直播权限,所以也没法授权给我们)

针对没有权限的商户,我们就必须在代码里把以上的代码全部注释,再次提交模板才能成功发布代码。也就是说针对直播的组件,我们就得有两套代码。

请问上述问题该如何解决?

第二个问题:

我们近期也对接了微信支付券功能,同样在代码上引入了插件,主要的代码:

1、app.json

"plugins": {"sendCoupon": {"version""1.1.2","provider""wxf3f436ba9bd4be7b"}},
"usingComponents": {"send-coupon""plugin://sendCoupon/send-coupon"},


同样的问题,在子商户没有在公众号添加微信支付券这个插件的时候,我们发布的代码如果含有以上代码,也会提示错误信息:

miniprogram has no permission to plugin[wx2b03c6e691cd7370] ,我们总不能因为要发布代码,就联系之前的所有商户进公众号添加微信支付券吧?毕竟大部分商家可能不需要这个功能。这种情况下,再结合小程序直播的代码,我们可能得维护4套模板。(没直播没商家券的、有直播没商家券的、没直播有商家券的,有直播有商家券的)。

请问上述问题该如何解决?

回答关注问题邀请回答
收藏

2 个回答

  • 烟斗
    烟斗
    2020-06-16

    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-06-16
    有用 2
    回复 10
    • undefined
      undefined
      2020-06-16
      可以的,写的很详细了,我试试。非常感谢
      2020-06-16
      回复
    • undefined
      undefined
      2020-06-16
      extJson中是不是不支持设置plugins?设置了都没效果,体验版会提示错误。
      2020-06-16
      回复
    • 烟斗
      烟斗
      2020-06-16回复undefined
      recompile 是否带上了
      2020-06-16
      回复
    • undefined
      undefined
      2020-06-16回复烟斗
      文档中没看到这个字段啊?
      2020-06-16
      回复
    • 烟斗
      烟斗
      2020-06-16回复undefined
      另外extJson中双引号记得加上\
      2020-06-16
      回复
    查看更多(5)
  • 飞虎商联
    飞虎商联
    2020-06-15

    第一个问题,试了好几次还是得两套。第二个我们暂时还没有接入支付劵,不清楚

    2020-06-15
    有用
    回复 1
    • undefined
      undefined
      2020-06-15
      是这样的,但是如果以后小程序使用的插件越来越多,一直分版本肯定不合适了。
      2020-06-15
      回复
登录 后发表内容
问题标签