我遇到了基于MacOS的cordova。这些版本适用于Android,但构建iOS真的很痛苦。以下是发生的事情:
>cordova build ios --device --debug --buildConfig ./build.json
.....
Check dependencies
No profile matching '******' found: Xcode couldn't find a profile matching '******'. Install the profile (by dragging and dropping it onto Xcode's dock item) or select a different one in the General tab of the target editor.
Code signing is required for product type 'Application' in SDK 'iOS 10.2'
这是所有内容的最新版本的全新安装(node,cordova,cordova-ios,XCode等)。我根据开发人员ID,团队,证书和配置文件设置了所有内容。所有这些工件都是有效的,我肯定知道,因为我正在将这个版本从英特尔XDK移动到我当地的Mac计算机上。这是我的build.json:
{
"ios": {
"debug": {
"provisioningProfile": "******",
"developmentTeam": "******",
"packageType": "development"
},
"release": {
"provisioningProfile": "******",
"developmentTeam": "*******",
"packageType": "app-store"
}
}
}
我可以在XCode帐户首选项中看到我的所有配置文件。我也在/Users/me/Library/MobileDevices/Provisioning Profiles
文件夹中看到它们。我已经打开了XCode项目,并在Build Settings和General选项卡中调整了项目和目标的代码签名。配置文件在那里,团队ID就在那里。
我现在需要的是使cordova命令行工作。
那么,我怎样才能让cordova和XCode合作?它在哪里寻找这些配置文件,为什么它们找不到它们?是什么给了什么?
答案 0 :(得分:10)
我也有这个问题,花了好几天试图建立,直到我终于明白了。由于某种原因,如果我的iPhone插入Mac,构建将失败,但如果我拔掉它,它构建完全正常。然后我打开Xcode,插上电话,然后运行它没有任何问题。我没有解释为什么会发生这种情况,但我从未看到错误。希望这有助于任何努力解决这个问题的人。
答案 1 :(得分:0)
我几乎放弃了这一点,但随后......魔术发生了 通过将Cordova升级到7.0.1,将MacOS升级到10.12.5并将XCode升级到8.3.2,一切都得到了解决 坦率地说,我不知道什么是破碎的,主要的嫌疑人是XCode--宇宙中最可怕的开发环境。