• 报错(警告):_BSMachError: (os/kern) invalid capability (20)和_BSMachError: (os/kern) invalid name (15)解决方法


    关于

    报错(警告):_BSMachError: (os/kern) invalid capability (20)和_BSMachError: (os/kern) invalid name (15)解决方法

    1.错误方式和解决

    **我出现这个问题是在UIAlertController中点击设置使用[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=Privacy"]]跳转到系统设置的时候发生的**
    
    _BSMachError: (os/kern) invalid capability (20)
    
    _BSMachError: (os/kern) invalid name (15)
    
    解决方法:
    
    通过使用多线程延迟调用解决这个问题,代码如下:
    
    dispatch_after(0.2, dispatch_get_main_queue(), ^{
            [[UIApplication sharedApplication] openURL:[NSURL 			URLWithString:@"prefs:root=Privacy"]];//隐私设置
    });
    

    2.错误方式和解决

    前些天在做app升级提示的时候,遇到了警告:
    _BSMachError: (os/kern) invalid capability (20)
    _BSMachError: (os/kern) invalid name (15) 
    
    原因:是自己在alertAction中添加了时间,但是并未采用延时机制。
    
    解决办法:代码示例
    [alertVC addAction:[UIAlertAction actionWithTitle:@"现在升级"   
    style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)  
    {
        //这里添加了多线程,消除警告
        dispatch_after(0.2, dispatch_get_main_queue(), ^{
            NSURL *appStoreUrl = [NSURL URLWithString:[NSString 
    		stringWithFormat:kAppStore_APPVersionUrl,APP_ID]];
            [[UIApplication sharedApplication] openURL:appStoreUrl];
            NSLog(@"链接--%@",appStoreUrl);
        });        
    }]];
    

    3.错误方式和解决

    解决方法:网上的解决方法
    可能是通知的问题。我是注释了postNotificationName,忘记把addObserver也删除。 
    在视图消失viewDidDisappear的这个方法中 remove掉观察者 我是这样解决的
  • 相关阅读:
    数据库 proc编程三
    数据库 Proc编程二
    数据库 Proc编程一
    数据库 Oracle数据库对象二
    Your local changes to the following files would be overwritten by merge: ... Please, commit your changes or stash them before you can merge
    生活感悟关键字
    科3
    NGINX 健康检查和负载均衡机制分析
    django模板里关闭特殊字符转换,在前端以html语法渲染
    django 获取前端获取render模板渲染后的html
  • 原文地址:https://www.cnblogs.com/xiaofei76/p/5867934.html
Copyright © 2020-2023  润新知