当前位置: 首页 > article >正文

解决关于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` 文件夹。

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

```oc
otool -l HappyDNS | grep __LLVM | wc -l
```

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

```oc
xcrun bitcode_strip -r HappyDNS -o HappyDNS
```


http://www.kler.cn/a/506907.html

相关文章:

  • YOLOv10-1.1部分代码阅读笔记-build.py
  • IP层之分片包的整合处理
  • 【力扣Hot100】滑动窗口
  • 如何禁用 PySpark 在运行时打印信息
  • mac 安装docker
  • 【MySQL学习笔记】MySQL视图View
  • 11-3.Android 项目结构 - 认识 .idea 目录
  • 如何在QT中保证线程是安全的?
  • 多包单仓库(monorepo)实现形式
  • 代码随想录算法【Day22】
  • 零基础入门uniapp Vue3组合式API版本
  • uniApp开通uniPush1.0个推,SpringBoot集成uniPush1.0个推
  • SDL2:PC端编译使用
  • dockerfile1.0
  • 【使用EasyExcel快速实现数据下载到Excel功能】
  • Vue进阶之Vue3后台系统
  • 【C#】WPF项目,项目目录文件解析、WinForms 和 WPF 的概念及其区别与联系
  • Spring boot面试题---- Spring boot项目运行原理
  • 基于Python SciPy的拥塞控制算法模拟
  • 【.net core】【sqlsugar】时间查询示例
  • tui-editor报错
  • 【数据结构练习题】栈与队列
  • ThreeJs功能演示——几何体操作导入导出
  • YOLOv8改进,YOLOv8检测头融合RFAConv卷积,并添加小目标检测层(四头检测),适合目标检测、分割等
  • Meta Quest 4:未来的虚拟现实体验
  • 数据区的内存空间