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(@"%@

%@",error, [error userInfo]);
                    return ;
                }
                else
                {
                    //                dispatch_async(dispatch_get_main_queue(), ^{
                    //                    [self.window.rootViewController presentViewController:tabVC animated:YES completion:nil];
                    //                });
                }
            }];

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

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

隔了段时间,xcode8又在昨天给我惹麻烦了

昨天项目碰到两个个比较蛋疼的问题,都是xcode8运行 出现的问题,3个开发员一起google了许久,终于找到答案

第一:在xib里面即使对控件做出了高度的约束,在view加载完之后会出现size变成了{1000,1000}, 解决办法:在viewdidload 或者 awakefromenib 里面调用  layoutifneed 

第二:当使用xcode8 运行ios8 版本的时候回无缘无故的到处崩,不是崩这里就是崩那里,这是一个非常蛋疼的问题,谷了好久终于找到原因,竟然是图片的问题,图片的颜色描述文件应该是 "sRGB IEC61966-2.1"类型的格式,我刚添加完的图片就是有些不是这种类型的,将图片重新修改后成改文件类型并且通道为8的,问题解决  参考文章  链接地址:https://www.ianisme.com/ios/2409.html

   简单讲就是 1, sRGB IEC61966-2.1

                  2, 8-bit

原文地址:https://www.cnblogs.com/yulongjiayuan/p/5882617.html