https://mp.weixin.qq.com/debug/wxadoc/dev/api/systeminfo.html
文档里说 wx.getSystemInfo() 可以查看 SDKVersion(客户端基础库版本),但要求本身正在使用的是 1.1.0 以上版本才能看到。
我在手机里调用这个接口得到的结果如下:
那么问题来了,我手机里现在的基础库版本到底是多少呢?
没看到 SDKVersion,似乎应该说明版本是在 1.1.0 以前,但是却能看到 screenWidth/screenHeight,这个同样也是 1.1.0 版本才开始有的呀。
接下来的问题是,这个基础库的版本是怎么升级的?有没有什么方式可以让我选择采用哪个版本(对于测试很重要)?还是只能凭运气等灰度?
wx.getSystemInfo()使用这个方法,在开发工具里面获取的是开发工具的基础库版本,在真机测试时,获取的是当前真机的基础库版本。如果没有SDKVersion,建议你多找几台测试机,进行多次测试。个人目前认为是基础库版本过低,没有获取到SDKVersion字段。所以测试真机的基础库版本可能是低于1.1.0的。你可以判断有没有该key(SDKVersion),没有的话,友好的提示一下用户即可。
@新新新丶: 这么说吧,我要针对所有已知的基础库版本(1.0.0/1.0.1/1.1.0/1.1.1/1.2.1/1.2.2)对小程序做严格的兼容性测试,于是我准备了 6 部安卓手机和 6 部苹果手机,那么,我应该分别安装什么版本的微信才能达到我的测试目的呢?
我知道程序里应该做【兼容性处理】,但处理得是否正确、是否足够,需要【兼容性测试】来验证。
谢谢 @无色,你的解释我能理解。基础库的每个版本、每个版本的接口支持情况、每个版本跟微信版本的相关性,这些应该都是有严格明确的定义的,我相信微信官方自己一定是有一套清晰文档的,只是希望官方能够把这份文档公开出来,便于开发者安排自己的开发、测试工作。