macOS Big Sur系统上,微信开发者工具崩溃问题解决
发布于 3 年前 作者 jieshen 3746 次浏览 来自 分享

崩溃

领了新电脑,配置开发环境过程中,发现开发者工具在打开构建后的文件夹时,加载一会儿就毫无预兆的崩溃;

搜了一些场景的办法:重启工具、重启系统、删掉项目再添加、换RC版本、删掉存储文件夹等,均告无效;

排查

网络:打开工具日志目录:查看包含error的部分,提示访问一个腾讯自己的域名失败(这里耽误的大量的时间),以为是代理的问题;但折腾半天仍稳定复现;
报错:录屏观察启动过程的输出,看到最后提示url的规范性检查报错,但抢在崩溃前勾选了关闭检查,仍崩溃
对照:新建了一个空白小程序,编译、预览正常,但打开工程目录,编译一会儿后继续崩溃
最后准备放弃了,但想到之前乱翻的时候看到了崩溃文件,抱着最后试一试的心理,打开“微信开发者工具 - 调试 - 打开调试目录 - 崩溃信息目录”,翻出来一个崩溃的dmp文件,网上找了一个解析的页面;<a href="https://filext.com/file-extension/DMP%EF%BC%8C%E4%B8%8A%E4%BC%A0%E5%90%8E%EF%BC%8C%E6%9F%A5%E7%9C%8B%E5%B4%A9%E6%BA%83%E4%BF%A1%E6%81%AF%EF%BC%8C%E6%9C%89%E8%BF%99%E4%B9%88%E4%B8%80%E6%AE%B5%EF%BC%9A%E2%80%9CThis" rel="noopener" target="_blank">https://filext.com/file-extension/DMP,上传后,查看崩溃信息,有这么一段:“This</a> app has crashed because it attempted to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSBluetoothAlwaysUsageDescription key with a string value explaining to the user how the app uses this data.”

看起来是没权限但使用了蓝牙相关的功能(推测是目标小程序涉及导致),和同事的设备对照了一下,老版的系统上就没问题,但macOS貌似从mojave开始就对权限控制做了不少改动,推测是该原因导致的;

系统权限里面提前授权即可;

后面发现直接用strings命令,也可以读取dmp文件里面的信息作为参考。

总结

一个耽误了整整一下午,还好圆满解决了,另外一个同事也折腾了许久;
网上不少吐槽开发者工具崩溃的例子,大家遇到了也可以尝试一下这个套路;看能否定位解决。

1 回复

不错,刚好升级mac系统后遇到一样的问题,已解决!

回到顶部