使用 Xcode 9 创建 iOS 通用框架
Creating iOS universal framework with Xcode 9
我正在为 iOS 创建通用框架。我正在尝试通过 lipo 创建一个,它确实创建了一个通用的
创建后我用 lipo 检查架构 returns 我是对的:
胖文件中的体系结构:i386 x86_64 armv7 arm64
我 运行 phone 上的应用程序和模拟器也工作正常。但是当我尝试从 xcarchive 导出 .ipa
时,我收到以下错误:
无法验证 Myframework 中的位码。framework/Myframework:\nerror: 平台 iPhoneSimulator 不是 supported\n\n
我也可以在我的通用框架中使用位码符号 运行ning
otool -l /Path/To/Framework | grep __LLVM
segname __LLVM
segname __LLVM
如果我只选择 iphoneos 框架,效果很好
在导出存档之前,您需要从框架中删除 i386 和 x86_64。
例如
$ lipo -remove i386 ./path/to/binary_name -o ./path/to/binary_name
$ lipo -remove x86_64 ./path/to/binary_name -o ./path/to/binary_name
您需要这样做,因为不支持导出 i386 和 x86_64 -- "Platform iPhoneSimulator is not supported"
我正在为 iOS 创建通用框架。我正在尝试通过 lipo 创建一个,它确实创建了一个通用的
创建后我用 lipo 检查架构 returns 我是对的:
胖文件中的体系结构:i386 x86_64 armv7 arm64
我 运行 phone 上的应用程序和模拟器也工作正常。但是当我尝试从 xcarchive 导出 .ipa
时,我收到以下错误:
无法验证 Myframework 中的位码。framework/Myframework:\nerror: 平台 iPhoneSimulator 不是 supported\n\n
我也可以在我的通用框架中使用位码符号 运行ning
otool -l /Path/To/Framework | grep __LLVM
segname __LLVM
segname __LLVM
如果我只选择 iphoneos 框架,效果很好
在导出存档之前,您需要从框架中删除 i386 和 x86_64。
例如
$ lipo -remove i386 ./path/to/binary_name -o ./path/to/binary_name
$ lipo -remove x86_64 ./path/to/binary_name -o ./path/to/binary_name
您需要这样做,因为不支持导出 i386 和 x86_64 -- "Platform iPhoneSimulator is not supported"