特别针对微信小程序0.16.170800版本的改动
小程序开发者工具是对微信客户端的模拟,受限于桌面设备同移动设备不同,以及微信的一些特有数据,同时考虑到开发的便捷性,那么有部分 API 在工具和微信中是有所不同的。
扫码接口
同手机端直接调用摄像头来扫码不同,在 PC 或者 Mac 上调用摄像头来扫码完成调试是一个低效的行为,所以在开发工具上调用二维码扫码 API 后,开发者可以选择一个本地的图片来进行后续的逻辑调试,而不是真正的启用摄像头来扫码,流程有所不同,但是接口的输入和输出是一致的。
微信支付
最新版本的开发者工具已经支持微信支付的调试,但是为了兼顾到安全,同手机上直接调用微信支付有所不同:
- 新绑定的开发者需要 24 小时后才有权限进行微信支付的调试
- 开发者在工具上调用微信支付的 API 后,开发工具会出现一个二维码,开发者必须使用当前开发所使用的微信号扫码后在手机上完成支付的流程
- 工具会同步移动端微信支付的回包到工具中,开发者自行进行后续的操作
使用的交互有所不同,但是接口的输入输出工具同客户端是保持一致的。
普通的分享
开发者工具上调用分享是一个模拟的行为,并不会真实的分享给用户,开发可以通过这个模拟行为判断是否正确的调用了分享 API。
带 shareTicket 的分享
带 shareTicket
的分享可以获取到更多的分享信息,例如群聊的名称以及群的标识 openGId
。在小程序开发者工具上,开发者可以通过以下方式来调试带 shareTicket
的分享。
调用 wx.showShareMenu
的参数 withShareTicket
为 true
时,点击模拟器右上角菜单后出现的转发按钮,会出现一个测试群列表,如图:
开发者点击选取任何一个群,可以通过接口的回包获取到 shareTicket
,通过调用 wx.getShareInfo
可以获取到相关分享的信息
当开发者需要调试从某一个群点开,并且带有 shareTicket
的场景时,可以使用自定义编译中的 1044:群聊会话中的小程序消息卡片(带 shareTicket)
同时可以选择任一模拟测试群,如图
进入场景值
在微信客户端中,用户可能在各个场景下打开小程序 详情 然而在开发者工具中是没有真实的环境去模拟这些场景的。开发者可以通过条件编译的方式来达到调试不同场景的目的。
启动使用自定义参数
在日常使用中,用户可以打开一个小程序,并且依据传入的 path
跳转到对应的小程序页面而非启动页面,或者可以通过 参数
使得小程序区别默认开打状态,开发者工具中,开发者同样可以通过条件编译的方式来达到调试不同 path
和 参数
的目的。
例如下图是选择进入页面是 pages/name/name
参数
是 name=linchao
预览使用自定义参数
同 启动使用自定义参数 相同,提交预览时,开发者可以通过自定义预览的方式来达到在移动设备上调试不同 path
和 参数
的目的。
例如下图是选择进入页面是 pages/name/name
参数
是 name=linchao