美文网首页
iOS之老项目升级常见报错集合

iOS之老项目升级常见报错集合

作者: focusHYD | 来源:发表于2020-04-14 09:09 被阅读0次

    1、报错信息ViewTouch.xib Compiling IB documents for earlier than iOS 7 is no longer supported.

    把build for 的版本更改为iOS7.0 或以上错误即可解决

    B3862157-DF8C-4A56-AF73-BF5E24901432.png

    2、does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target.

    一种就是换成 enable bitcode 的第三方库,再有一种就是将工程的 ENABLE_BITCODE 设置为 false 就可以了。

    EAC6764A-1661-442C-9D80-4DF21ED89542.png

    3、iOS 11图片保存相册权限

    This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
    NSPhotoLibraryAddUsageDescription是iOS 11新推出的隐私规则,在写入相册时会询问,没有的话就会闪退。

    info.plist Source Code对应设置:
    <key>NSCameraUsageDescription</key>
    <string>请允许APP访问您的相机</string>
    <key>NSPhotoLibraryAddUsageDescription</key>
    <string>请允许APP保存图片到相册</string>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>请允许APP访问您的相册</string

    4、 修改build system

    在Xcode菜单栏 -> File -> Project Setting,将build system修改为legacy build system,然后clean后编译。

    WeChatbc087a2243327e42986c335d6a9e83fc.png

    5、 library not found for -lstdc++.6.0.9

    ld: library not found for -lstdc++.6.0.9
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    错误原因:

    Xcode10中已去除这个library。项目中有用到的话,可以从旧版本Xcode中copy一份过来。

    解决方法:

    如果你自己的业务模块使用了libstdc++,那么就把模块代码重新调整为依赖libc++,然后重新检查是否存在问题,重新编译

    如果你引用的三方库使用了libstdc++,那么向三方库寻求支持,进行升级

    相关文章

      网友评论

          本文标题:iOS之老项目升级常见报错集合

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