zoukankan      html  css  js  c++  java
  • Xcode8以及iOS10问题总结!

    Xcode8的问题

    注释功能问题解决

    打开终端,命令运行: sudo /usr/libexec/xpccachectl 重启电脑

    在xib和stroyboard出现大量警告,需要重新适配,字体所占用宽度变大

    collectionView问题

     

    屏蔽Xcode 8“烦人”的日志输出

    更新到Xcode 8的同学应该都遇到了这个问题:用Xcode 8运行项目,日志会疯狂的刷,就像下面这种图一样:


    日志输出

    于是,简单搜寻了下,“歪果仁”给出了如下解决方法:

    Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = disable


    解决方法图解

    这样设置之后,就屏蔽掉那些烦人的日志了。

    【1】、Xcode8代 码出现ubsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 1, privacy_setting: 2, enable_private_data: 0 2016-09-14 17:18:55.843428 MyApp[6880:340837]

    解决办法:【product】-【scheme】-【Edit Scheme】-【Run】-【Argument】-【Environment Variable】添加keyValue【OS_ACTIVITY_MODE   disable】可以停止输出打印此日志

    遗留问题:还会出现Class PLBuildVersion is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x10a39a910) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x10a1c4210). One of the two will be used. Which one is undefined.

    【2】MJRefresh出现崩溃现象

     解决办法:类库增加判断

    1
    2
    3
    if (range.location != NSNotFound) {
                language = [language substringToIndex:range.location];
    }    

    【3】iOS10字体隐藏问题

    label的话写一个扩展类

    • 第二步 
      这里写图片描述

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    @implementation UILabel (Extend)
     
    - (void)lableAdaptIOS10{
     
        CGFloat iOS10 = [[UIDevice currentDevice] systemVersion].floatValue >= 10;
        if (iOS10) {
    //        self    UIFont 的preferredFontForTextStyle: 意思是指定一个样式,并让字体大小符合用户设定的字体大小。
            [self sizeToFit];
     
    //      self.font =[UIFont preferredFontForTextStyle: UIFontTextStyleHeadline];  
            //是否更新字体的变化
    //        self.adjustsFontForContentSizeCategory = YES;
        }
    }

    Xcode8总是打印一堆奇怪的东西。虽然不影响开发,但是看着很不爽。解决的方法就是在Scheme里面添加OS_ACTIVITY_MODE = disable

      • 第一步 
        这里写图片描述

      • 第二步 
        这里写图片描述

      • Xcode8打包出现的问题
      • 签名出错,Xcode8可以自动替开发者生成证书描述问题
      • 参考网站https://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&prev=search&rurl=translate.google.com.sg&sl=en&u=http://stackoverflow.com/questions/37806538/code-signing-is-required-for-product-type-application-in-sdk-ios-10-0-stic&usg=ALkJrhgcKvLVlgyIWGq9xcDjdoXGh2BpPg
      • 需要FQ
        • 现在做的Xcode - >产品 - >清洁。 关闭您的项目在Xcode并再次打开它。

        • 在此之后到您的每一个目标的常规选项卡,勾选“自动管理签名”,并在团队下拉菜单中选择您的开发者账户 

      • 官方网站
      • ERROR ITMS-90682: Invalid Bundle - The asset catalog at 'Payload/XXXXX/Assets.car' can't contain 16-bit or P3 assets if the app supports iOS 9.3 or earlier.

        刚升级Xcode 8, 幺蛾子又出现了。提交的时候出了这个问题。 BTW,感谢google。以下为解决方案:‘

        在 Xcode 8 中,当你资源文件中[含有16位图]或者[图片显示模式γ值为'P3'] 且iOS targets设定为iOS 9.3以下就会出现这个问题. 如果你的app需要支持广色域显示的话,那你必须得把target设置成iOS 9.3+,相反,如果你的app不需要支持广色域且你想兼容 iOS 9.3 之前的项目,你就得把所有的16位的或者显示模式为'P3'图片全都替换成8位模式的SRGB颜色的图片。

        你可以通过运行“assetutil”在iTunes Connect的错误信息中找到16-bit 或 P3 资源文件。离线的解决方案如下:

        1.导出项目的 ipa 文件

        2.定位到该ipa文件修改后缀名.ipa 为 .zip.

        3. 解压该 .zip 文件. 解压后的目录里面会有一个包含着你的 app bundle 文件的 Payload 文件夹.

        4. 打开终端病切换到你的app的Payload文件夹下的 .app bundle 文件夹内,形式如下:

        cd path/to/Payload/your.app

        5. 用 find 命令定位到 Assets.car 文件 .app bundle , 形式如下:

        find . -name 'Assets.car'

        6. 使用 assetutil 命令找到任何包含着 16-bit or P3 的资源文件, 对每个 Assets.car 之行以下命令 :

        sudo xcrun --sdk iphoneos assetutil --info /path/to/a/Assets.car > /tmp/Assets.json

        注:这里的/path/to/a/Assets.car 指的是Assets.car的路径,不要直接复制!!!使用上一步find命令的结果。

        ------------------2016-09-21更新----------------------------

        -------------------end of the update--------------------------

        7.  打开上一步生成的 /tmp/Assets.json 文件并查找包含有 “DisplayGamut": “P3” 或者相关的内容.  这段json的"Name"字段对应的值就是16位或显示的γ值为P3的资源文件名.

        8.  找到这个资源文件修改为 8位的sRGB形式,重新编译上传你的app即可.

        iOS10 配置须知

        在iOS10中,如果你的App想要访问用户的相机、相册、麦克风、通讯录等等权限,都需要进行相关的配置,不然会直接crash。
        需要在info.plist中添加App需要的一些设备权限。

        NSBluetoothPeripheralUsageDescription
        访问蓝牙

        NSCalendarsUsageDescription
        访问日历

        NSCameraUsageDescription
        相机

        NSPhotoLibraryUsageDescription
        相册

        NSContactsUsageDescription
        通讯录

        NSLocationAlwaysUsageDescription
        始终访问位置

        NSLocationUsageDescription
        位置

        NSLocationWhenInUseUsageDescription
        在使用期间访问位置

        NSMicrophoneUsageDescription
        麦克风

        NSAppleMusicUsageDescription
        访问媒体资料库

        NSHealthShareUsageDescription
        访问健康分享

        NSHealthUpdateUsageDescription
        访问健康更新

        NSMotionUsageDescription
        访问运动与健身

        NSRemindersUsageDescription
        访问提醒事项

        从2017年1月1日起,强制使用https,所有新提交的 app 默认不允许使用NSAllowsArbitraryLoads来绕过ATS的限制 安全传输不再支持SSLv3, 建议尽快停用SHA1和3DES算法

  • 相关阅读:
    10 行 Python 代码,批量压缩图片 500 张,简直太强大了
    听说苏州是互联网的荒漠,真的吗?
    sum() 函数性能堪忧,列表降维有何良方?
    len(x) 击败 x.len(),从内置函数看 Python 的设计思想
    如何给列表降维?sum()函数的妙用
    Shell脚本关于循环的一些总结
    大技霸教你远程执行Linux脚本和命令
    老板对我说,你要是能找出公司里摸鱼的人,我就给你涨薪!于是我写了两个脚本……
    Linux 命令行下搜索工具大盘点,效率提高不止一倍!
    饿了么总监分享:我是如何完成从程序员到管理层的蜕变?
  • 原文地址:https://www.cnblogs.com/ycblog/p/5896751.html
Copyright © 2011-2022 走看看