首页 > 代码库 > xcode8运行ios10 的版本模拟器会出现很多的崩溃现象,比如用到相机,麦克风,健康数据等

xcode8运行ios10 的版本模拟器会出现很多的崩溃现象,比如用到相机,麦克风,健康数据等

刚运行的时候也觉得莫名其妙的,这么就挂了呢,Google了好久刚开始只是解决了相机崩溃的问题,后来HealthKit的问题也搞明白了,原来都只需要在info里面填写这些对应的key就可以 了

技术分享

对应为:

<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
<key>NSContactsUsageDescription</key>
<string>contactsDesciption</string>
<key>NSMicrophoneUsageDescription</key>
<string>microphoneDesciption</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>

解释下这些key

NSCameraUsageDescription ----- 相机
NSContactsUsageDescription ----- 摄像头
NSMicrophoneUsageDescription ----- 麦克风
NSPhotoLibraryUsageDescription ----- 相册

还有一个是找的比较久的 healthKit 问题
崩在这个方法:
/*             注册需要读写的数据类型,也可以在“健康”APP中重新修改             */            [self.healthStore requestAuthorizationToShareTypes:nil readTypes:readDataTypes completion:^(BOOL success, NSError *error) {                if (!success) {                    NSLog(@"%@\n\n%@",error, [error userInfo]);                    return ;                }                else                {                    //                dispatch_async(dispatch_get_main_queue(), ^{                    //                    [self.window.rootViewController presentViewController:tabVC animated:YES completion:nil];                    //                });                }            }];

解决方法是添加这两个key:

技术分享

 

以下是官方的文档对照表,自己查询想要的key

技术分享技术分享技术分享技术分享技术分享

xcode8运行ios10 的版本模拟器会出现很多的崩溃现象,比如用到相机,麦克风,健康数据等