美文网首页
xcode8.0->8.3升级

xcode8.0->8.3升级

作者: 丨飞翔的蛋花丨 | 来源:发表于2017-04-13 10:51 被阅读98次

    由于种种原因,我们的iOS项目需要直接从xcode8.0编译通过的版本升级到xcode8.3,其间遇到了很多不好处理的问题在此记录。

    1. code sign error

    这个问题我还不明白产生的原因,但是将cocoapods版本升级到1.2.0以上,ruby版本升级到2.2.1以上之后,重新pod install可以解决。

    2. podspec规范

    8.2以后的xocde对podspec有了更严格的要求,在pod install时会有错误提示,基本上按照提示补全即可。主要可能缺少的在于source字段缺失以及description字段为空。

    3. comment编译问题

    comment编译问题
    如图所示,在升级到8.3之后编译会报出大量的类似错误,主要是由于代码注释不规范引起的,之前应该也出现过,不过都还是warning的形式。
    在podfile中加入config.build_settings['CLANG_WARN_DOCUMENTATION_COMMENTS'] = "NO"选项重新install编译即可。

    4. 代码规范问题

    前面的问题都解决后,编译时还是有可能出现link错误,可能是由于某些代码不规范造成的,不如下面这个例子:

    NS_ENUM(NSUInteger, NVLocalNotiTriggerType){
        NVLocalNotiTriggerTypeOnce = 0,
        NVLocalNotiTriggerTypeDaily,
        NVLocalNotiTriggerTypeWeekly
    };
    

    这样定义一个枚举类型可能会引起link错误NVLocalNotiTriggerType duplicated,改为

    typedef NS_ENUM(NSUInteger, NVLocalNotiTriggerType){
        NVLocalNotiTriggerTypeOnce = 0,
        NVLocalNotiTriggerTypeDaily,
        NVLocalNotiTriggerTypeWeekly
    };
    

    即可。类似问题还有一些,解决时可以考虑是否换一种写法来试试。

    相关文章

      网友评论

          本文标题:xcode8.0->8.3升级

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