解决关于Xcode16提交审核报错

问题描述

The following issues occurred while distributing your application.

Asset validation failed

Invalid Executable. The executable 'xxx.app/Frameworks/HappyDNS.framework/HappyDNS' contains bitcode.(lD:ef5dd249-731f-4731-8173-8e4a12519352)

Asset validation failed

Invalid Executable. The executable 'xxx.app/Frameworks/PLMediaStreamingKit.framework/PLMediaStreamingKit' contains bitcode. (lD:898428d1-4a1b-4176-8d89-a5a8f2bed2dc)

Asset validation failed

Invalid Executable. The executable 'xxx.app/Frameworks/PLPlayerKit.framework/PLPlayerKit' contains bitcode. (lD: 21c812b6-2f5d-48dd-bed9-38eeea2b2381)

正常通过`Produre - Archive`打包,并在`Xcode`的`Window -Organizer - Distribute App`提交`App Store`审核报错误。

`Bitcode` 是一种中间表示形式,在 `Xcode`中打包提交到 `App Store` 审核时,如果出现包含 `Bitcode` 的报错,这通常意味着您的应用没有正确包含 `Bitcode`。`Bitcode` 是苹果的一项要求,它允许苹果在 `App Store` 中对您的应用进行进一步的优化。

当提交应用到 `App Store` 时出现与 `Bitcode` 相关的问题,您需要手动移除 `framework` 中的 `Bitcode`。

解决方法

~~在 Xcode 中禁用 Bitcode:~~

* 打开你的 Xcode 项目;

* 选择你的项目在 Project Navigator 中;

* 选择你的目标应用;

* 选择"Build Settings"标签;

* 搜索"Enable Bitcode"并将其设置为"No" ;

* 清理并重建你的项目(使用快捷键 Shift + Command + K 进行清理,然后使用 Command + B 进行重建)。

> *由于 Xcode16 不再支持 Bitcode,所以我们无法在项目中找到这个设置。*

使用命令行工具,手动更改`Bitcode`

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

  1. 通过 `cd`命令进入到 `HappyDNS.framework` 的路径。\

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

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

```oc

otool -l HappyDNS | grep __LLVM | wc -l

```

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

```oc

xcrun bitcode_strip -r HappyDNS -o HappyDNS

```

相关推荐
太子釢15 小时前
用 AI 完整实现 Github 客户端:基于 KMP + SwiftUI + Compose
android·人工智能·ios
软泡芙16 小时前
【iOS】 Alamofire + Moya + SwiftData 完整教程
ios
我是谁的程序员17 小时前
Windows / Linux / Mac 上不用 Xcode 把 IPA 上传到 App Store,upload 命令详解
后端·ios
iFlyCai17 小时前
iOS中的单例模式详解
ios·单例模式·objective-c·多线程·swift
ilawsonlu20 小时前
如何正确处理 CoreBluetooth 超时与 Task Cancellation
ios
00后程序员张21 小时前
SSL Pinning 抓包抓不到明文?绕过证书固定的几种方案
网络协议·计算机网络·网络安全·ios·adb·https·udp
ii_best1 天前
手机自动化脚本按键精灵实战:随机布局安全数字键盘的自动化输入方案
android·运维·ios·自动化·手机
软泡芙2 天前
【IOS】Codable
ios·ssh·cocoa
nvvas2 天前
9月苹果发布会前瞻:新iPhone、Apple Watch重点速览
ios·iphone
Zender Han2 天前
Flutter 自适应(Adaptive)与响应式(Responsive)设计实践:官方推荐方案详解
android·flutter·ios