私は自分のiPhoneとAndroidデバイス。
ただし、Xcode 8
にアップグレードし、iPhone iOS
をiOS 10
にアップグレードした後、ipasをローカルでビルドできません。次のエラーで失敗します。
===ターゲットを構築* OF PROJECT * WITH CONFIGURATION Debug ===
「*」の開発チームが必要です。プロジェクトエディターで開発チームを選択してください。** SDK「iOS 10.0」の製品タイプ「アプリケーション」にはコード署名が必要です
これは、更新前は完全に機能していました。更新後、iOS
のビルドは失敗します。
プロジェクトに関連するバージョン番号は
ios-deploy -V - 1.8.6
xcodebuild -version - Xcode 8.0 Build version 8A218a
適切な証明書とプロビジョニングプロファイルを使用してXcode
セットアップを取得しました。
Dpogueが指摘したように、コルドバはコミットでこの問題を修正しました
92a62997adb3c8512328d5a0ae42fe5d156291f1
iOSプラットフォームリポジトリのmasterブランチにあります。
この修正の恩恵を受けるには、次のような最新の開発バージョンをインストールする必要があります
cordova platform remove ios && cordova platform add https://github.com/Apache/cordova-ios.git
そして、build.json
ファイルをプロジェクトルートに追加して、次のようにする必要があります
{
"ios": {
"debug": {
"developmentTeam": "YOURTEAMID"
},
"release": {
"developmentTeam": "YOURTEAMID"
}
}
}
チームIDはここで取得できます: https://developer.Apple.com/account/#/membership
ビルドを実行します
cordova run ios --device
...またはbuild.jsonを指定する
cordova run --buildConfig=build.json ios --device
そしてそれは動作するはずです!
これを解決するために使用した回避策について書きました。
https://dpogue.ca/articles/cordova-xcode8.html
要約すると、開発者チームIDを指定する必要があります。 Cordova-iOSの次のバージョンでは、build.jsonファイルのdeveloperTeam
を使用してこれを実行できます。 フック が利用可能です。
また、コード署名IDを「iPhone Developer」に設定する必要がありますリリースビルドの場合でも。 build.jsonでcodeSignIdentity
を使用してこれを行います。
プロビジョニングプロファイルを指定する必要はありません。Xcodeは、チームIDを持っている場合に自動的に処理します。
お役に立てば幸いです!
これは私のために働く
"ios": {
"release": {
"developmentTeam": "yourdevteamid",
"packageType": "app-store",
"provisioningProfile": "yourprovfileUUID"
}
}
}
「codeSignIdentity」:「iPhone Development」を追加しても機能しないため、build.jsonファイルからcodeSignIdentityを削除します。また、すべてのアイコンをconfig.xmlに追加する必要がありました
<icon src="res/ios/[email protected]" width="180" height="180" />
<!-- iOS 7.0+ -->
<!-- iPhone / iPod Touch -->
<icon src="res/ios/icon-60.png" width="60" height="60" />
<icon src="res/ios/[email protected]" width="120" height="120" />
<!-- iPad -->
<icon src="res/ios/icon-76.png" width="76" height="76" />
<icon src="res/ios/[email protected]" width="152" height="152" />
<!-- Spotlight Icon -->
<icon src="res/ios/icon-40.png" width="40" height="40" />
<icon src="res/ios/[email protected]" width="80" height="80" />
<!-- iOS 6.1 -->
<!-- iPhone / iPod Touch -->
<icon src="res/ios/icon.png" width="57" height="57" />
<icon src="res/ios/[email protected]" width="114" height="114" />
<!-- iPad -->
<icon src="res/ios/icon-72.png" width="72" height="72" />
<icon src="res/ios/[email protected]" width="144" height="144" />
<!-- iPhone Spotlight and Settings Icon -->
<icon src="res/ios/icon-small.png" width="29" height="29" />
<icon src="res/ios/[email protected]" width="58" height="58" />
<!-- iPad Spotlight and Settings Icon -->
<icon src="res/ios/icon-50.png" width="50" height="50" />
<icon src="res/ios/[email protected]" width="100" height="100" />
<!-- iPad Pro -->
<icon src="res/ios/[email protected]" width="167" height="167" />
IOS用のApache CordovaビルドでxCode 8に同じ問題があり、結果なしで見つけることができるすべてのソリューションを試してみました。この:
{
"ios": {
"release": {
"developmentTeam": "yourdevteamid",
"packageType": "app-store",
"provisioningProfile": "yourprovfileUUID"
}
}
}
多くの投稿者が「codeSignIdentity」:「iPhone Developer」を指定することを提案していますが、別のエラーが発生しました。この構成のみが機能しました。
私たちのチームのカスタムビルドスクリプトはSudo cordova build ios
。
私のために働いたのは、Sudo
を使用せずにプロジェクトを再構築することでした。必要に応じて許可エラーを修正しました。次に、ビルドスクリプトからSudo
を削除し、すべてが機能しました。
**最初のビルド後にxCodeでチームを指定する必要がありました。
前述のように、cordova ios 4.3.1に更新し、build.jsonファイルを指定すると、私にとってはうまくいきました(おそらく4.3.0には修正が含まれています)
プラットフォームを更新するには:
cordovaプラットフォームアップデートiOS
Xcodeプロジェクト設定の[全般]タブで[署名の自動管理]オプションを有効にするだけで、署名に関連するすべての問題が修正されます。私の回答をご覧ください。
Xcode 8.2.1および付属のXcodeコマンドラインツールをアップグレードした後、同様の問題が発生しました。
私のために働いたソリューション:
1)Xcode設定->アカウントを開きました
2)既存のアカウント(AppleID)を削除しました
3)AppleIDを使用して新しいアカウントを追加しました
4)右ペイン表示を開く新しいアカウントを選択し、「詳細の表示」をクリックしました。
5)必要に応じて、特に「iOS開発」で新しい署名IDを生成しました。 「完了」をクリックしました。
それに続いて、私のCordovaアプリはすべて「cordova build ios」を許可しました。