小程序代开发需要怎么做?
小程序运营者 , 可以一键授权给第三方平台 , 通过第三方平台来完成业务 。 第三方平台在小程序的前后端开发上同直接开发小程序有所区别 , 其所拥有的各项API以及详细说明请查看代小程序实现业务 , 其余部分请阅读下文 。

文章图片
开发第三方平台小程序具有一定的复杂性 , 首先需要确认三个概念:
open3rd:第三方平台 , 是小程序官方认可的第三方开发商3rdMiniProgramAppid:第三方平台申请的并绑定在该平台上的小程序 , 用于开发小程序模板extAppid:授权给第三方平台的小程序第三方平台相关的小程序开发需要做一些特殊的处理:
小程序模板的开发小程序模板结合extAppid的开发调试使用directCommit直接提交至待审核列表最新版本的开发工具支持第三方平台小程序的开发和预览 。
创建项目
与开发普通小程序一致 , 第三方平台开发者填入相关的3rdMiniProgramAppid , 设定项目名称和选择项目目录即可创建项目 。
对于第三方平台小程序 , 可以在项目页卡查看到相关的open3rd信息以及当前的第三方的3rdMiniProgramAppid , 如若项目配置了相关的extAppid , 那么项目页卡中也会有相关信息 。

文章图片
小程序模板开发
【小程序代开发需要怎么做?】与开发普通小程序一致 , 开发者在开发工具上开发好相关的业务逻辑之后 , 在项目页卡中提交预览即可以在微信中查看小程序的真实表现 。
有所不同的是 , 第三方平台小程序的提交上传是上传至该第三方平台的open帐号下的模板草稿箱中 , 该平台的管理员需要自行对该模板进行相应的设置 , 更多请参考开放平台的文档 。
extAppid的开发调试
为了方便第三方平台的开发者引入extAppid的开发调试工作 , 需要引入ext.json的概念 。
ext.json是一个配置文件 , 放置在小程序项目的根目录下 。
以下是一个包含了所有配置选项的ext.json:
{
"extEnable":true,
"extAppid":"wxf9c4501a76931b33",
"directCommit":false,
"ext":{
"name":"wechat",
"attr":{
"host":"open.weixin.qq.com",
"users":[
"user_1",
"user_2"
]
}
},
"extPages":{
"pages/logs/logs":{
"navigationBarTitleText":"logs"
}
},
"window":{
"backgroundTextStyle":"light",
"navigationBarBackgroundColor":"#fff",
"navigationBarTitleText":"Demo",
"navigationBarTextStyle":"black"
},
"tabBar":{
"list":[{
"pagePath":"pages/index/index",
"text":"首页"
},{
"pagePath":"pages/logs/logs",
"text":"日志"
}]
},
"networkTimeout":{
"request":10000,
"downloadFile":10000
}
}
ext.json中的配置字段分为两种
特有的字段同app.json相同的字段特有的字段
属性类型必填描述extEnableBoolean是配置ext.json是否生效extAppidString是配置extAppidextObject否开发自定义的数据字段extPagesStringArray否单独设置每个页面的jsondirectCommitBoolean否是否直接提交到待审核列表
extEnable
extEnable是一个Boolean类型的字段 , 用于规定当前的ext.json文件是否生效 , 开发者可以通过修改这个字段来开启和关闭extAppid的结合开发 。
extAppid
extAppid是授权调试的AppID , 例如开发者在此处填写的是wxf9c4501a76931b33那么在extEnable为真的情况下 , 后续的开发逻辑都会基于wxf9c4501a76931b33来运行 。
ext
ext字段是开发自定义的数据字段 , 在小程序中可以通过wx.getExtConfigSync或者wx.getExtConfig获取到这些配置信息 。
例如上面的例子中 , 通过wx.getExtConfigSync就可以获得ext字段的所有配置
{
"name":"wechat",
"attr":{
"host":"open.weixin.qq.com",
"users":[
"user_1",
"user_2"
]
}
}
extPages
extPages是一个对象 , 对象中的每个key应该是该小程序模板app.json中定义的页面 , 每个key对应的value是page.json中所规定的各项配置 。
当开发者设置这个配置以后 , 小程序框架会对应的修改相对应的page的配置信息 。
directCommit
directCommit是一个Boolean类型的字段 , 用于规定当前的上传操作是否是直接上传到extAppid的审核列表中 。
当directCommit为true真时 , 开发者在工具中的上传操作 , 会直接上传到对应的extAppid的审核列表 , 第三方平台只需要调用https://api.weixin.qq.com/wxa/submit_audit?access_token=TOKEN即可以提交审核 。 更多请参考第三方平台文档
当directCommit为false或者没有定义时 , 开发者在工具中的上传操作 , 会直接上传到对应的草稿箱中 。
tips:可以使用工具的命令行接口或者http接口来实现自动化的代码提交审核
同app.json相同的字段
当ext.json中的字段同app.json中一致时 , ext.json的字段会覆盖app.json中的对应字段 , 例如以下的ext.json
{
"window":{
"backgroundTextStyle":"light",
"navigationBarBackgroundColor":"#fff",
"navigationBarTitleText":"extnavigationBarTitleText",
"navigationBarTextStyle":"black"
}
}
那么该小程序最终的navigationBarTitleText应该是extnavigationBarTitleText 。
推荐阅读
- 腾讯控股的保险代理平台“微保”被深圳银保监局处罚
- 数字人民币试点地区展开测试 集中在餐饮、零售、充值等小范围场景
- 小区公共收益成为一笔“糊涂账”?定期公开收支是关键
- “光盘打卡”小程序火了 激励年轻人节约粮食
- 识别“95”号段中的“李鬼” 这些小技巧要掌握!
- 起驾旅行|内蒙古戈壁滩遍地玛瑙宝石:当地万人“吃”石头,一只“小鸡”价值1.3亿元
- 科学探索|毒性更小:氧化铈纳米颗粒或成蛀牙克星
- 小区公共收益成为一笔糊涂账?定期公开收支是关键
- 生活e小调|萨尔茨堡,奥地利的西部,阿尔卑斯山脉的门庭
- “全麦面包”真假难辨:部分掺杂小麦粉 涉成分虚标
