xcode16提交审核报bitcode错错误-Asset validation failed (90482) Invalid Executable

网上搜了一下,终于找到了方法:我是用的第二种方法,第一种还没有尝试。方法是对的,主要是把对应的路径找对就可以了,要找到你的framework的真正路径

错误描述:Asset validation failed (90482)

Invalid Executable. The executable 'xxx-mobile.app/Frameworks/NERtcAiHowling.framework/NERtcAiHowling' contains bitcode. (ID: 3eb44c99-8611-42cf-8428-84c9d4b27ac4)

错误原因:xcode 16之后苹果对bitcode审核更加严格了

解决方法1

如果是通过pod导入的只需要在Podfile里添加下面代码

# 解决M1芯片电脑不能模拟机运行

post_installdo|installer|

  bitcode_strip_path =`xcrun --find bitcode_strip`.chop!

  defstrip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)

    framework_path = File.join(Dir.pwd, framework_relative_path)

    command ="#{bitcode_strip_path} #{framework_path} -r -o #{framework_path}"

    puts"Stripping bitcode: #{command}"

    system(command)

  end

  framework_paths = [

    "/Pods/TXIMSDK_iOS/ImSDK.framework/ImSDK",

  ]

  framework_paths.eachdo|framework_relative_path|

    strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)

  end

end

记得把framework_paths里面的路径换成自己报错的framework的路径 如果有多个可以继续往里添加比如下面这样

framework_paths = [

    "/Pods/TXIMSDK_iOS/ImSDK.framework/ImSDK",

    "/Pods/NIMSDK/NIMSDK.framework/NIMSDK",

  ]

然后执行一下pod install就可以打包上传提交审核了

解决方法2-如下链接:

https://doc.yunxin.163.com/messaging2/faq/jE4MjAwMTI?platform=client

方法2示例:

假设您有一个名为 NIMSDK.framework 的 framework,并且它位于 /path/to/~/NIMSDK.framework 路径,那么您可以按照以下方式处理:

1.通过 cd 命令进入到 NIMSDK.framework 的路径。

如果是通过 pod install 获取的 SDK,则进入 pods 文件夹。

2.执行以下命令检查 framework 是否包含 bitcode,返回 0 即为不包含。

otool -l NIMSDK | grep __LLVM | wc -l

3.如果检测结果不是 0,则继续执行以下命令移除 NIMSDK.framework 的 Bitcode。

xcrun bitcode_strip -r NIMSDK -o NIMSDK

(NIMSDK 替换成自己报错的SDK)

作者链接://www.greatytc.com/p/51bc7e48e92e

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容