美文网首页
iOS中如何避免误使用高版本API导致的崩溃问题

iOS中如何避免误使用高版本API导致的崩溃问题

作者: yanhooIT | 来源:发表于2018-09-02 16:27 被阅读21次

    如何避免误使用高版本API导致的崩溃问题

    • 打开-Wunguarded-availability在调用高版本API时候报warning,为避免warning过多而忽视,用-Werror-unguarded-availability标记强制编译不过
      使用高版本API检测配置
    • 如果代码本身安全(使用了respondsToSelector:保护),可以用下面两种方式去除警告
      • 方式一
      // 忽略警告:误使用高版本API版
      #define K_Warning_Ignored_Start_ApiCheck _Pragma("clang diagnostic push") _Pragma("clang diagnostic ignored \"-Wunguarded-availability\"")
      
      // 这里写忽略警告的code
      
      #define K_Warning_Ignored_End_ApiCheck _Pragma("clang diagnostic pop")
      
      • 方式二@available
      if (@available(iOS 8.0, *)) {
          // 这里写忽略警告的code
      }
      
    • 针对pod需要在.podspec文件中添加compiler_flags配置

    参考文章

    相关文章

      网友评论

          本文标题:iOS中如何避免误使用高版本API导致的崩溃问题

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