"

www.long8.vip_long8娱乐官网拥有全球最顶尖的原生APP,每天为您提供千场精彩体育赛事,www.long8.vip_long8娱乐官网更有真人、彩票、电子老虎机、真人电子竞技游戏等多种娱乐方式选择,www.long8.vip_long8娱乐官网让您尽享娱乐、赛事投注等,且无后顾之忧!

"

支付宝小程序:1. 构建小程序版本

小编:啊南 568阅读 2020.12.29


说明:实施商家小程序需要第三方应用代商家小程序调用 Open API 进行操作,代调用的操作详情,请参见 代调用 OPEN API 说明。

通过三方模板构建商家小程序版本接口引导

接口名:alipay.open.mini.version.upload ??根据模板上传商家小程序版本

接口功能:系统服务商(ISV)基于小程序模板创建商家小程序。详细的参数说明、示例代码、错误码等请参见 alipay.open.mini.version.upload。

说明:

  • 不论是初次构建商家小程序版本还是升级商家小程序版本,都需要基于最新过审的小程序模板版本新构建一个商家小程序的版本。

  • 构建商家小程序版本接口有所升级提速,相关说明请参见 模板构建升级指南,不论是何种模式构建小程序版本,都应在代调用构建版本的接口后 查询构建状态,查询到构建成功再进行后续操作。

构建商家小程序的配置说明

根据模板所构建的商家小程序的开发配置会继承第三方应用和模板的开发配置(包括接口加签方式、域名白名单、IP 白名单、支付宝网关、应用网关、接口内容加密方式、基础库最低版本、H5域名配置等),如果模板未设置开发配置,则商家小程序会继承第三方应用的开发配置;如果商家小程序在代调用构建版本接口之前已有开发配置,则代调用构建版本接口后,在小程序原有的开发配置基础上合并模板的开发配置一起生效。

参数说明

参数

说明

ext

自定义参数,实例化的小程序会生成一个 ext.json 的文件,ext.json 会覆盖 app.json 中的相同字段,不相同字段合并生效。

在小程序可以通过 my.getExtConfig() 或 my.getExtConfigSync() 获取字段(建议支付宝版本 > 10.1.38,并使用 my.canIUse?做兼容处理)。

template_id

小程序模板的 APPID,可登录 开放平台,在模板详情中的模板图标下方获取。

app_version

每次构建版本的版本号不可小于已有版本且不可重复。

为了方便第三方平台的开发者引入 APPID 的开发调试工作,需要引入 ext.json 的概念。

ext.json是一个配置文件,放置在小程序项目的根目录下。代调用接口时传入 ext 参数,则实例化的商家小程序的根目录下就会创建 ext.json 文件。

将商家的标识符(可自行决定采用何种标识,只要可以通过此标识查询出之前记录的该商家对应的app_auth_token即可)通过ext.json注入商家小程序中,以便小程序模板前端向系统服务商(ISV)的服务端发出的请求,都可以带上商家标识符,从而服务端可以查询出与商家对应的app_auth_token。




{  "extEnable": true,  "ext": {    "shopId": "2018050xxxxxx975978",    "miniShopId": "1112xxxxxx9766",    "appId": "201xxxxxx108305"  },  "extPages": {    "pages/face/index":{        "defaultTitle": "功能演示页面"    }  },  "window":{    "defaultTitle": "支付宝接口功能演示"  },  "tabBar": {    "textColor": "#dddddd",    "selectedColor": "#49a9ee",    "backgroundColor": "#ffffff",    "items": [      {        "pagePath": "pages/index/index",        "name": "首页"      },      {        "pagePath": "pages/logs/logs",        "name": "日志"      }    ]  }}




ext.json中的配置字段分为两种:

  • 特有的字段

  • 同app.json相同的字段

extEnable是一个 Boolean 类型的字段,用于规定当前的ext.json文件是否生效,开发者可以通过修改这个字段来开启和关闭 ext 中的 APPID 的结合开发。

ext字段是开发自定义的数据字段,在小程序中可以通过my.getExtConfigSync进行获取。自定义参数,实例化的小程序会生成一个 ext.json 文件,ext.json 会覆盖 app.json 中的相同字段,不相同字段合并生效。

例如上面的例子中,通过my.getExtConfigSync就可以获得ext字段的所有配置。




{    "shopId": "2018050xxxxxx975978",    "miniShopId": "1112xxxxxx9766",    "appId": "201xxxxxx108305"  }







const extJson = my.getExtConfigSync();    let shopId = extJson.shopId;    let miniShopId = extJson.miniShopId;    let appId = extJson.appId;




extPages是一个对象,对象中的每个 key 应该是该小程序模板app.json中定义的页面,每个 key 对应的 value 是 page.json 中所规定的各项配置。当开发者设置这个配置以后,小程序框架会对应的修改相对应的 page 的配置信息。

示例:





@Testpublic void buildByTemplate() {    // 1、构建ext字段    Map<String, Object> extFields = new HashMap<String, Object>();    extFields.put("extEnable", true);    Map<String, String> ext = new HashMap<String, String>();    ext.put("shopId", "2019201929019291");    ext.put("userSlogan", "这是商家自定义的标语");    extFields.put("ext", ext);    // 2、构建请求    AlipayOpenMiniVersionUploadRequest request = new AlipayOpenMiniVersionUploadRequest();    Map<String, String> content = new HashMap<String, String>();    content.put("ext", JSONObject.toJSONString(extFields)); // ext字段转换成json字符串格式    content.put("template_id", "2019121069217771");    content.put("app_version", "0.0.3");    request.setBizContent(JSONObject.toJSONString(content));        // 3、代调用的app_auth_toke
 request.putOtherTextParam("app_auth_token", APP_AUTH_TOKEN);    try {        AlipayOpenMiniVersionUploadResponse response = alipayClient.execute(request);        printResponse(response);    } catch (AlipayApiException e) {        e.printStackTrace();    }}





常见报错

报错

解决方案

系统繁忙

检查biz_content参数,传入的参数应该为一个JSON 字符串,可以参考 alipay.open.mini.version.upload 文档的示例。

商户未签约任何产品

商家小程序下线导致报错,请确保商家小程序是已上线的状态。

有关构建商家小程序的常见问题,请参见 三方业务 构建 FAQ。

查询商家小程序构建状态

完成构建商家小程序后,需代调用该接口,轮询小程序版本构建状态。

接口引导

接口名:alipay.open.mini.version.build.query? 查询小程序版本构建状态

接口功能:查询小程序版本构建状态,详细的参数说明、示例代码、错误码等请参见?alipay.open.mini.version.build.query。

参数说明

当返回结果中?create_status 为6,则说明小程序版本创建成功。

删除商家小程序版本

只有状态为开发中的版本才能被删除,默认最多允许 20 个开发中的版本。如果超出,代调用该接口删除废弃的版本。

接口引导

接口名:alipay.open.mini.version.delete 删除小程序版本

接口功能:删除开发状态的小程序版本,详细的参数说明、示例代码、错误码请参见?alipay.open.mini.version.delete。

体验构建的小程序

当代调用查询小程序版本构建状态接口 alipay.open.mini.version.build.query 返回参数create_status为6后,可代调用小程序生成体验版接口,生成体验版小程序供系统服务商(ISV)和商家进行检查预览。

操作步骤
  1. 生成商家小程序体验版,代调用接口?alipay.open.mini.experience.create。

  2. 查询商家小程序体验版状态,代调用接口?alipay.open.mini.experience.query。

    通过接口响应参数exp_qr_code_url,获得二维码链接,点击扫码,即可体验商家小程序。

    说明:如果扫体验码提示没有此功能,代调用接口?alipay.open.app.members.create,添加开发者或体验者。

  3. 取消商家小程序体验版,代调用接口?alipay.open.mini.experience.cancel。


关联标签: