美文网首页
如何合并模拟器和真机SDK / Merge device fra

如何合并模拟器和真机SDK / Merge device fra

作者: Grabin | 来源:发表于2019-09-30 14:39 被阅读0次

    如何合并模拟器和真机SDK
    / Merge device framework and simulator to "fat" framework

    查看SDK支持的格式

    lipo -info $(可执行文件路径)

    结果是i386 x86_64,这是模拟器版本。

    image.png

    结果是armv7 armv64,这是真机版本。

    image.png
    那么如何合并这两个,让模拟器和真机都能够使用呢?

    还是使用lipo命令:

    1. lipo -create -output $(要保存新生成可执行文件的地址) $(模拟器可执行文件地址) $(真机可执行文件地址)
    image.png
    1. 将生成的文件替换真机framework里面的可执行文件


      image.png
    2. 将模拟器framework里面的xx.swiftmodule里面的文件合并到真机framework对应的文件中。(复制粘贴)

    image.png
    1. 修改header文件
      修改 xx-Swift.h 文件

    a. 将下面这行代码:

    #elif defined(__arm64__) && __arm64__
    

    改成

    #elif (defined(__arm64__) && __arm64__) || (defined(__x86_64__) && __x86_64__)
    

    b. 将下面这行代码:

    #elif defined(__ARM_ARCH_7A__) && __ARM_ARCH_7A__
    

    改成

    #elif (defined(__ARM_ARCH_7A__) && __ARM_ARCH_7A__) || (defined(__i386__) && __i386__)
    

    Done!

    相关文章

      网友评论

          本文标题:如何合并模拟器和真机SDK / Merge device fra

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