环信问题
上图问题1:
由于 iOS 编译的特殊性,为了方便开发者使用,我们将 i386 x86_64 armv7 arm64 几个平台都合并到了一起,所以使用动态库上传appstore时需要将i386 x86_64两个平台删除后,才能正常提交审核
在SDK当前路径下执行以下命令删除i386 x86_64两个平台实时音视频版本Hyphenate.framework
1.先把Hyphenate.framework放到桌面上;
2.终端位置cd到桌面【cd desktop -->这个命令也有不知道的吗!?】;
3.运行:lipo Hyphenate.framework/Hyphenate -thin armv7 -output Hyphenate_armv7
4.运行后没有输出提示,直接运行下一个命令:lipo Hyphenate.framework/Hyphenate -thin arm64 -output Hyphenate_arm64
5.运行后一样没有输出提示,直接运行下一个命令:lipo -create Hyphenate_armv7 Hyphenate_arm64 -output Hyphenate
6.运行后一样没有输出提示,直接运行最后一个命令:mv Hyphenate Hyphenate.framework/
7.运行完毕后得到
得到的Hyphenate.framework就是最后的结果,拖进工程,编译打包上架。
注意最后得到的包必须真机编译运行,并且工程要设置编译二进制文件General->Embedded Bunaries.
lite 版本的跟这些步骤一样的,只需要对应改下名字,就不赘述了。
lipo HyphenateLite.framework/HyphenateLite -thin armv7 -output HyphenateLite_armv7
lipo HyphenateLite.framework/HyphenateLite -thin arm64 -output HyphenateLite_arm64
lipo -create HyphenateLite_armv7 HyphenateLite_arm64 -output HyphenateLite
mv HyphenateLite HyphenateLite.framework/
上图问题2:
从EaseUIResource.bundle中找到info.plist删掉CFBundleExecutable
假如你使用的一些 sdk 中 有使用 bundle ,那么可能还有一个错就是 CFBundleExecutable key 的问题 ,英文错误提示大意就是 说 bundle 中没有可执行的文件,bundle 中的 info.plist 文件中却有 CFBundleExecutable 这个key ,解决办法就是 ,工程全局 搜索 CFBundleExecutable ,这样把 能找到的 plist 文件逐一打开 ,不需要的 就把对应的 键值对直接删除,
我的工程中 最后 的结果就是 只有主工程 的info.plist 中有 CFBundleExecutable 这个key ,其他的 bundle 中的 info.plist 中的 CFBundleExecutable ,都删除了。
从EaseUIResource.bundle中找到info.plist删掉CFBundleExecutable,不要删除整个info.plist