You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Xcode后Cordova应用编译失败(错误70):需推送通知配置文件

解决Cordova iOS构建时"requires a provisioning profile with the Push Notifications feature"错误

针对你使用VS2015 Remote Build、Cordova 6.5.0、Xcode 9.3.1遇到的归档导出失败问题,核心原因是你的iOS应用需要推送通知权限,但当前使用的描述文件(Provisioning Profile)未包含该功能,下面是一步步的解决方法:

1. 确认App ID已开启推送通知权限

  • 登录苹果开发者后台,进入「Certificates, Identifiers & Profiles」页面
  • 找到你的应用对应的App ID,点击编辑,确保Push Notifications选项已经开启(开发和生产环境都需要配置对应的证书)
  • 如果之前未开启,开启后需要重新生成相关推送证书

2. 重新生成包含推送权限的描述文件

  • 在开发者后台的「Provisioning Profiles」板块,选择对应环境(开发/Ad Hoc/生产)的描述文件
  • 编辑该描述文件,确保关联的App ID已开启推送通知权限,然后重新生成并下载
  • 将下载的描述文件安装到远程构建的Mac机器上(双击即可安装,或者通过Xcode的「Preferences -> Accounts」同步到本地)

3. 配置exportOptions.plist文件

错误提示明确要求在exportOptions.plist的provisioningProfiles字典中添加正确配置,你可以手动修改该文件:
找到远程构建目录下的exportOptions.plist(路径:/Users/UserName/.taco_home/remote-builds/taco-remote/builds/20190/cordovaApp/platforms/ios/exportOptions.plist),添加或修改如下内容:

<key>provisioningProfiles</key>
<dict>
    <key>com.yourcompany.yourapp</key> <!-- 替换成你的应用Bundle ID -->
    <string>你的描述文件名称</string> <!-- 替换成刚生成的描述文件的完整名称 -->
</dict>

也可以在Cordova构建时通过命令参数指定自定义的plist文件:

cordova build ios --device --exportOptionsPlist=path/to/your/custom-exportOptions.plist

4. 检查Cordova推送插件配置

如果你使用了cordova-plugin-push,确保插件已正确安装并配置:

  • 执行cordova plugin list确认插件已安装
  • 检查config.xml中是否配置了正确的Bundle ID:
<widget id="com.yourcompany.yourapp" version="1.0.0" xmlns="http://www.w3.org/ns/widgets">

5. 验证Xcode项目的Capabilities配置

在远程构建的Mac上,打开生成的XXX.xcodeproj项目:

  • 进入项目的「Capabilities」标签页
  • 确保Push Notifications开关已打开,且Xcode自动关联了正确的描述文件

完成以上步骤后,清理之前的构建缓存,重新执行远程构建命令,应该就能解决归档导出失败的问题了。

内容的提问来源于stack exchange,提问作者Larry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:40:22