美文网首页
IOS --- ios10遇到的问题

IOS --- ios10遇到的问题

作者: 懒眉 | 来源:发表于2016-12-06 11:39 被阅读89次

    测试环境:Xcode8.0/ios10.0/iphone6

    一.发布版本


    1. IPv6网络不支持
    现在网络环境其实大部分还是以IPV4为主,但是据说苹果6.1日之后的APP上线都要求APP能够在IPv6网络环境下正常运行,我们可以弄一个IPv6的无线来进行测试。搭建IPv6网络环境参考tuicool.com 很详细了,应该没什么问题。
    手机连上设置的WiFi之后,发现你的APP无法进行任何网络请求操作,如果你用了比较旧的AFnetWorking 库, GCDAsyncSocket库,那么更换它们比你自己去修改其中兼容IPv6部分的代码要容易的多,暂时来看,大部分第三方库的最新更新都是兼容了IPv6网络环境的(本人就是GCDAsyncSocket出问题了,更换库文件之后,可以在IPv6环境下进行网络请求)。

    2. 权限系列
    本人手头APP的 头像设置部分在调用相机的时候闪退。

    This app has crashed because it attempted to access privacy-sensitive data without a usage description.
    The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

    控制台打印如上显示信息,大概意思是叫我们在info.plist里面添加NSCameraUsageDescription字段
    在项目中找到nfo.plist文件,添加需要字段,Key一定不能错,Value 可以根据需要填写
    相机权限描述:Key=NSCameraUsageDescriptioncameraDesciption

    Value=“XXXAPP想使用您的相机”
    

    通信录:NSContactsUsageDescriptioncontactsDesciption
    麦克风:NSMicrophoneUsageDescriptionmicrophoneDesciption
    相册:NSPhotoLibraryUsageDescriptionphotoLibraryDesciption
    好在在Xcode8.0中已经存在这些字段,我们只需要选择添加然后填写Value就行了。

    权限键值对填写
    3. 跳转定位设置
    ios9.0时可以使用[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];跳转系统定位设置,然而在ios10时这种方法也失效了,可以使用[[UIApplication sharedApplication]openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];方法跳转
     if (isiOS10)
        {
              [[UIApplication sharedApplication]openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
       }else
       {
              [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];
       }
    

    二.UI调试


    1. ios 10字体变大
    UIButton显示不全,加上sizeToFit 就可以解决

    [button  sizeToFit]; //调用sizeTofit方法
    

    UILable 显示不全,iOS10提供一个属性adjustsFontForContentSizeCategory 设置该属性为Yes

    让字体大小符合用户设定的字体大小。
     Label.font =[UIFont preferredFontForTextStyle: UIFontTextStyleHeadline]; 
    是否更新字体的变化
    Label.adjustsFontForContentSizeCategory = YES;
    

    2. Xcode 8.0勾选Automatically manage signing 自动更新配置文件和证书

    自动更新配置文件和证书勾选

    相关文章

      网友评论

          本文标题:IOS --- ios10遇到的问题

          本文链接:https://www.haomeiwen.com/subject/kqalmttx.html