_BSMachError
警告相信大家都不会感到陌生,只要所开发的应用有跳转到其他应用或平台的功能时,代码不规范都会引起这个警告,虽然不影响功能的使用,但作为一个有代码洁癖的猿猿来说,这是绝对不能允许的。
1、_BSMachError
警告信息
[Common] _BSMachError: (os/kern) invalid capability (0x14) "Unable to insert COPY_SEND"
[Common] _BSMachError: (os/kern) invalid name (0xf) "Unable to deallocate send right"
通用描述为:
[Common] _BSMachError: (os/kern) invalid capability (0x14)
[Common] _BSMachError: (os/kern) invalid name (0xf)
2、_BSMachError
警告来源
笔者所实现的功能是跳转微信分享和系统拨号功能时所出现的,经过搜索后发现这种警告来源有很多种,我在这细化分为三类:
第一类:跳转到第三方分享、登录、授权时;
第二类:通过调用系统方法 openURL
跳转时;
第三类:系统弹框 alertView
或者键盘的出现时;
注:第三类的产生可能与iOS系统版本有关,因为笔者自己也没有经过,只能根据搜索的信息做相关推测。
3、_BSMachError
官方解释
苹果开发者论坛上找到两个连接: https://forums.developer.apple.com/message/122381#122381 https://forums.developer.apple.com/thread/15683
结论:这个问题太复杂,如果没有上下文,苹果开发团队也说不清_BSMachError确切是由于什么引起的。
不过人家最后留下了线索:
— Quinn “The Eskimo!” Apple Developer Relations, Developer Technical Support, Core OS/Hardware let myEmail = “eskimo” + “1” + “@apple.com”
如果你觉得有必要的话,可以写信给这个邮箱,等等看有什么结果。
4、_BSMachError
的解决方法
笔者搜索了很多相关的问题,所说的解决方法基本都是“延时操作”,笔者自己也去试了试,发现果然解决了这个警告。
延时跳转dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[WXApi openWXApp];
});
5、笔者V587
笔者已入坑,哈哈。
网友评论