升级到 xcode 9 后,无法构建 cordova 应用程序,错误 70,需要具有推送通知功能的配置文件

After upgrading to xcode 9, cordova app won't build, error 70, requires a provisioning profile with the Push Notifications feature

VS2015 远程构建, 科尔多瓦 6.5.0, Xcode9.3.1,

我已经很努力了,还是没有解决问题。有人可以帮忙吗?

错误信息:

1>  ** ARCHIVE SUCCEEDED **
1>MDAVSCLI : error : exportArchive: "XXX.app" requires a provisioning 
profile with the Push Notifications feature
1>  Error Domain=IDEProvisioningErrorDomain Code=9 ""XXX.app" requires a 
provisioning profile with the Push Notifications feature." UserInfo= 
{NSLocalizedDescription="XXX.app" requires a provisioning profile with the 
Push Notifications feature., NSLocalizedRecoverySuggestion=Add a profile to 
the "provisioningProfiles" dictionary in your Export Options property list.}
1>
1>  ** EXPORT FAILED **
1>
1>   Error code 70 for command: xcodebuild with args: -exportArchive,- 
archivePath,XXX.xcarchive,- 
exportOptionsPlist,/Users/UserName/.taco_home/remote-builds/taco- 
remote/builds/20190/cordovaApp/platforms/ios/exportOptions.plist,- 
exportPath,/Users/UserName/.taco_home/remote-builds/taco- 
remote/builds/20190/cordovaApp/platforms/ios/build/device

这意味着您必须使用 Xcode 打开在 MacOS 上创建的 .xcodeproj 文件,然后启用 自动签名 选项来管理签名和配置文件.只有在那之后,您才能直接从 Xcode 构建和部署而不会出现问题。

将我的 cordova 项目升级到 Cordova@7.1.0 后,更改我的 build.json 下面:

{
"ios": {
    "debug": {
        "codeSignIdentity": "iPhone Developer",
        "developmentTeam": "yourTemaID",
        "packageType": "development",
        "automaticProvisioning": true,
        "buildFlag": [
            "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
            "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
            "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
        ]
    },
    "release": {
        "codeSignIdentity": "iPhone Developer",
        "developmentTeam": "yourTemaID",
        "packageType": "app-store",
        "automaticProvisioning": true,
        "buildFlag": [
            "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
            "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
            "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
        ]
    }
}}

现在,一切都很顺利!

Cordova Doc iOS build.json