web-dev-qa-db-ja.com

iCloudのセットアップとプロビジョニング

IOSアプリケーション内でiCloudをセットアップしようとしていますが、次のことを行いました。

  1. Mac上の古い証明書をすべて削除しました。
  2. 開発コンソールのアプリにiCloudを追加-新しいコンテナを作成してアプリに追加
  3. 開発プロビジョニングをやり直してダウンロード
  4. プロビジョニングをインストールしました
  5. アプリにiCloudエンタイトルメントを追加しました

そして、これはすべてがうまくいかないところです...

アプリを再度実行できません。アプリはビルド中ですが、次のようなエラーが発生します。

アプリケーションのコード署名資格ファイルで指定された資格が、プロビジョニングプロファイルで指定された資格と一致しません。

(0xE8008016)。

何か案は??

更新:アプリケーションを実行して、すべてをプログラムして配置し、すべてをiTunes Connectでセットアップし、すべてのプロビジョニングを有効にして同期することができました。

検証中にエラーが発生しました...

4:無効なコード署名資格があります。アプリケーションバンドルの署名には、iOSでサポートされていないコード署名資格が含まれています。具体的には、ペイロードのキー「com.Apple.developer.icloud-container-identifiers」-------サポートされていません

他の3つは、他のコンテナーでも同様です。

11
RichAppz

Appleにレポートを提出した後、Appleシステムは再び役に立たないことがわかりました!

さて、新しいアプリケーションを作成する場合、またはアプリケーションにiCloudを追加するだけの場合は、システムがiOS8クラウドコンテナを取得または作成しないようにする必要があります。

アプリのエンタイトルメントファイルから削除する必要がある場合は、Apple Developer Consoleで選択したコンテナを削除し、証明書を再度ダウンロードしてください。

ありがとうAppleもう一度!

プレリリースされたソフトウェアを使用したことで非難されました! Xcode6にはまだ触れていません!!!

6
RichAppz

遅いコメントかもしれませんが、同じ理由で誰かが苦労している場合に備えて、ここに投稿します。

最近、アーカイブしようとしたときにXcode8でこの問題が発生しました。通常、次の手順でXcodeを使用してiCloudを有効にしました。

  1. トグルをオンに設定して、ターゲットでiCloud in Capabilitiesパネルを有効にします。
  2. メンバーセンターのアプリ識別子の下にあるiCloudをチェックすると、自動的に緑色に変わり、アプリ識別子を使用してiCloudコンテナが自動的に作成されます。 (Appleのシステムは私たちのためにこれを行います。)
  3. アプリ識別子を使用して証明書を再生成します。
  4. 新しいプロビジョニングプロファイルを作成します。
  5. 新しい証明書とプロビジョニングプロファイルをダウンロードしてインストールします
  6. ターゲットのGeneralパネルのSigning(Release)セクションで新しいプロビジョニングプロファイルを選択します。

次に、次のようなエラーが発生しました。

プロビジョニングプロファイル「iCloudテスト」には、com.Apple.developer.ubiquity-container-identifiers、com.Apple.developer.icloud-container-identifiers、およびcom.Apple.developer.icloud-servicesの資格は含まれていません。 SDK「iOS10.1」の製品タイプ「アプリケーション」にはコード署名が必要ですSDK「iOS10.1」の製品タイプ「アプリケーション」にはコード署名が必要です

ついに、メンバーセンターのアプリ識別子の下にあるiCloudセクションに2つのオプションがあることがわかりました。デフォルトでは、Compatible with Xcode 5が選択されましたが、他のオプションを選択して成功しました。

enter image description here

33
Jonathan Ma

初めてiCloudをアプリに追加する場合、または古いiCloudコンテナを使用した後にCloudKitを使用するようにアップグレードする場合:

  1. Apple Development Center に移動します。
  2. 証明書、ID、およびプロファイルを選択します。
  3. 左上のドロップダウンを使用して、iOS/tvOS/watchOSまたはmacOSを切り替えます
  4. 識別子セクションでアプリIDを選択します。
  5. リストからアプリを選択します。
  6. iCloudまで下にスクロールし、緑色の点で有効になっていることを確認します。
  7. 有効になっていないか、黄色の点がある場合は、ページの下部にあるボタンをクリックして編集し、iCloudサービスがチェックされていることを確認します。
  8. iCloud Containersセクションの下にコンテナを作成し、それをこのアプリに関連付ける必要がある場合もあります。
8
Nick

私がしたこと:-com.Apple.developer.icloud-servicesのみをエンタイトルメントファイルに残します-iCloudでマークされたキー値ストレージとiCloudドキュメント(クラウドキットEMPTY)の下の機能-カスタムを指定するように設定されたコンテナですが、コンテナを選択しません-これにより、手順の下に赤い警告サインが表示される可能性がありますが、そのままにしておきます修正しないでください-プロビジョニングプロファイルについて開発および配布プロファイルには、iCloudが有効になっているがコンテナにリンクされていないアプリIDが必要です-以下に設定されているプロビジョニングプロファイルでXcode5などのiCloudOLDバージョンはiCloudコンテナに関連する新しいバージョンではありません

0
Dario Caric

「アプリIDにiCloudコンテナを追加する」というエラーが発生しました。

自動署名では、ターゲットの資格に関する問題を解決できませんでした。

私はiCloudコンテナさえ使っておらず、Key-Valueストレージ(キーチェーン)だけを使っています。また、メンバーセンターのアプリ識別子の下にあるiCloudセクションを「Xcode5と互換性がある」から「CloudKitサポートを含める(Xcode 6が必要)」に切り替えましたが、まだ問題が残っています。

だから私はそれをこのように修正しました:

  1. トグルをオンに設定して、ターゲットのiCloud機能パネルを有効にします。
  2. メンバーセンターで「CloudKitサポートを含める(Xcode 6が必要)」をオンにします(それでも同じエラーが発生します)。
  3. xcodeのiCloud機能でCloudKitをオンにして(不要な場合でも)、オフにします。

そして、問題は私のために解決しました!

0
Omega