美文网首页
iOS framework分离与合并 删除SDK中的i386,x

iOS framework分离与合并 删除SDK中的i386,x

作者: 智能老树皮 | 来源:发表于2020-07-08 10:58 被阅读0次

    在使用第三方库库Framework或者其它的第三方的时候,库的开发人员可能为了方便打包与发行,常常将i386,x86_64,armv7,arm64多种模式混合起来一起打包,而我们在app提交的时候更本用不到i386和x86_64俩种架构,所以让我们要把它分离出来

    解决方法是一种迂回的方式,先分离再合并

    首先我们查一下我们的第三方框架都包含多少种CPU架构

    lipo -info xxx.framework/xxxxFramework

    然后分离你想要的架构

    lipo XXXX.framework/XXXX -thin arm64 -output XXXX.framework/XXXX-arm64lipo XXXX.framework/XXXX -thin armv7 -output XXXX.framework/XXXX-armv7

    然后合并架构

    lipo -create XXXX.framework/XXXX-armv7 XXXX.framework/XXXX-arm64 -output XXXX.framework/XXXX

    第二种方法

    删除SDK中的i386,x86_86架构

    1.使用终端进入到SDK内部

    cd /Users/leo/Desktop/testDir/NIMSDK.framework

    2.查看当前支持的架构

    lipo -info NIMSDK

    可以看到NIMSDK当前支持的架构:

    Architectures in the fat file: NIMSDK are: i386 x86_64 armv7 arm64

    3.删掉i386,x86_86

    lipo -remove i386 NIMSDK -o NIMSDKlipo -remove x86_64 NIMSDK -o NIMSDK

    以上是删除架构方法, 也可以取出架构重新组建, 以下方法(未测试)

    mkdir ./bak

    mkdir ./bak

    cp -r Flutter.framework ./bak

    lipo Flutter.framework/Flutter -thin armv7 -output Flutter_armv7

    lipo Flutter.framework/Flutter -thin arm64 -output Flutter_arm64

    lipo -create Flutter_armv7 Flutter_arm64 -output Flutter

    mv Flutter Flutter.framew ork/

    原文链接:iOS framework分离与合并 删除SDK中的i386,x86_86架构 - 简书

    相关文章

      网友评论

          本文标题:iOS framework分离与合并 删除SDK中的i386,x

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