uni-app IOS上传提示:Asset validation failed (90482) Invalid Executable

发布于 1周前 作者 htzhanglong 来自 Uni-App

uni-app IOS上传提示:Asset validation failed (90482) Invalid Executable
Asset validation failed (90482) Invalid Executable. The executable ‘HBuilder.app/Frameworks/ffmpegkit.framework/ffmpegkit’ contains bitcode. (ID: e9069b92-81aa-445c-9222-c51fc748a51a)

4 回复

1、确认下是否使用了第三方插件,其依赖了ffmpegkit.framework动态库,且包含了bitcode。 2、联系插件作者,重新编译ffmpegkit.framework动态库,编译时不要包含bitcode


我用的同一款插件,以前打包没问题,怎么这次打包出问题了

你好,这个问题解决了吗

在开发使用uni-app进行跨平台应用开发时,遇到iOS上传App Store提示“Asset validation failed (90482) Invalid Executable”错误,通常意味着你的iOS应用包(IPA文件)存在一些问题,这些问题可能涉及签名、配置、或者构建过程中的一些细节。这里我将提供一些检查和修正这些潜在问题的代码和配置示例,帮助你定位和解决问题。

1. 检查证书和配置文件

确保你使用的证书(Provisioning Profile)和签名证书(Certificate)是有效的,且与你的Apple Developer账号关联的应用ID匹配。你可以在Xcode中检查这些设置:

// Xcode中Target的Signing & Capabilities配置
Target -> Signing & Capabilities
- Team: 选择正确的开发者团队
- Provisioning Profile: 选择正确的配置文件(Development或Distribution)
- Signing Certificate: 自动选择或手动选择与Provisioning Profile匹配的证书

2. 清理和重建项目

有时候,简单的清理和重建项目可以解决一些构建过程中产生的问题:

# 如果你是使用HBuilderX构建uni-app项目,可以尝试以下命令
hbuilderx clean
hbuilderx build --platform ios --mode release

或者,在Xcode中:

Product -> Clean Build Folder

3. 检查Info.plist配置

确保Info.plist文件中所有必要的键值对都已正确配置,比如CFBundleIdentifierCFBundleVersionCFBundleShortVersionString等。此外,如果你的应用使用了特定的权限(如相机、麦克风),确保这些权限已在Info.plist中声明。

<!-- Info.plist 示例 -->
<key>CFBundleIdentifier</key>
<string>com.yourcompany.yourapp</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>NSCameraUsageDescription</key>
<string>App需要访问相机</string>

4. 检查Xcode构建设置

在Xcode的Build Settings中,检查是否有任何设置可能导致构建失败或产生无效的可执行文件。特别是Build Active Architecture OnlyEnable Bitcode等设置。

// Build Settings中检查
- Build Active Architecture Only: Debug设为Yes, Release设为No
- Enable Bitcode: 根据需要设置为Yes或No,但需与App Store要求一致

通过上述步骤,你应该能够定位并解决“Asset validation failed (90482) Invalid Executable”的问题。如果问题依旧存在,建议仔细检查Xcode的构建日志,查找具体的错误信息或警告,这可能会提供更详细的线索。

回到顶部