难点
- 将设计好的应用生成原生小程序代码:因为编辑时和运行时环境差异性,导致不能使用同一套代码,需要针对不同平台有不同的实现(实现方案二)。
- 将设计好的应用发布到商家自己的小程序中,需要对接微信第三方平台能力,主要是因为对这套发布流程不熟悉。
实现方案:
一、WebApp/H5小程序:复用H5版本
在H5版本上,通过小程序Webview开放能力组件实现H5页面动态渲染,通过传入H5地址方式,实现不同程序内容展示。
特点:
- 实现简单,因为和编辑时使用的是同一环境,****可直接复用,不需要做单独适配。
- 能力有限,因为使用Webview进行渲染,所以应用所能使用的能力取决于Webview组件提供的开发能力,目前可以使用的能力可查看Webview组件文档
二、原生小程序方案:生成小程序原生组件
在web端进行应用设计完成后,将内容保存为和平台无关的通用语言数据,常用的为JSON Schema,不同平台需要实现各自的解析适配器,将内容解析为平台特有的代码,这里即为解析为微信小程序。
特点:
{
"label": "新增组件",
"icon": "icon-zujian",
"fields": {
"color_gi": {
"label": "颜色选择器",
"type": "color",
"value": ""
},
"string_Ao": {
"label": "输入框",
"type": "string",
"value": "",
"options": {
"placeholder": "请输入"
}
},
"upload_6t": {
"label": "图片上传",
"type": "upload",
"value": ""
}
}
}
参考实现方案:
- https://github.com/silence717/taro-designer
- https://github.com/ShaoGongBra/taro-design
- https://ext.dcloud.net.cn/plugin?id=6740
- https://pageplug.cn/
- https://github.com/staringos/mtbird
如何使用第三方平台代开发
第三方平台(简称第三方平台),由微信团队面向所有通过开发者资质认证的第三方开发者提供提供的官方平台。在得到公众号或小程序管理员授权后,基于该平台,第三方服务商可以通过调用官方接口能力,为商家提供公众号代运营、小程序代注册、代开发等服务以及提供公众号和小程序相关的行业方案、活动营销、插件能力等全方位服务。
满足条件
- 提供行业解决方案,如针对电商行业的解决方案,或针对旅游行业的解决方案等;
- 行业:(横向)提供更加专业的运营能力,精细化运营用户公众号或小程序;
- 功能:(纵向)对公众平台功能的优化,如专门优化图文消息视觉样式和排版的工具,或专门定制的 CRM 用户管理功能,或功能强大的小程序插件等。
流程
一、如何成为服务商
1、第三方平台帐号的审核无需缴费,但开放平台帐号的认证(即开发者资质认证)需要交300块钱认证费。一个已完成开发者资质认证的开放平台帐号,可创建5个平台型服务商第三方平台帐号。
2、任何合法合规的、为小程序提供开发服务及有意愿的开发者都可以成为小程序服务商,微信不会区别对待,也无官方授权的概念。
- 官方网站:服务商应当有对外可用的官网,且该官网提供的服务描述与申请的第三方平台帐号名称、简介、图标均有所关联
- 平台图标:图标必须为当前服务商所有,不可使用其他企业的图标作为第三方平台帐号图标,108 x 108像素,大小不超过300KB,且格式为PNG的图片
- 域名和ssl证书
二、搭建三方后端服务:自建模式和云服务
- 服务商类型
平台型第三方平台帐号
- 这是官方推荐选择的类型,该类型的服务商可基于第三方平台接口能力,在获取商家扫码授权后,为商家提供代开发、代运营公众号和小程序服务。
- 想要为商家实现批量化服务,例如批量运营公众号、批量代开发小程序等,则需要选择该类型的帐号。
定制化型第三方平台帐号
- 当你不需要以服务商身份使用第三方平台接口能力,只需生成票据用于标记商家小程序是由该服务商开发的,那么可以选择创建该类型的帐号。
- 该类型的帐号仅有一个APPID用以作为服务商帐号id,没有secret,无法生成token,不可调用官方任何接口能力。该类型的服务商通常不基于第三方平台能力为商家提供服务。
搭建好三方服务后需要和业务系统服务进行联调对接,然后进行全网发布。
三、授权
商家需要将其公众号或者小程序授权给第三方平台,服务商才可以代商家进行相关操作。
四、代商家调用接口
小程序的api,服务商都可以调用,只是服务商调用的时候要使用authorizer_access_token,而不是access_token。
服务商能否代商家成功调用某个公众号或者小程序的api,取决于该公众号或者小程序管理员是否将对应的权限集授权给当前第三方平台帐号。
五、代开发小程序
代码上传
- 通过开发者工具
- CI代码上传
- 使用小程序CI自动上传代码