web-dev-qa-db-ja.com

エンタイトルメントファイルを追加すると、無効なエンタイトルメント0xE8008016

アドホック配布をしようとしています。 XCodeを使用すると、アプリケーションが電話に正常にインストールされます。

アドホック配布の準備として、デフォルトのエンタイトルメントファイルを作成し、get-task-allowボックスのチェックを外し、エンタイトルメントファイル名をコード署名エンタイトルメント行に追加して、電話にインストールしようとしました。

ビルド設定のエンタイトルメントにファイルがある場合、(恐ろしい)エラーが発生します

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

(0xE8008016)。

これは、コード署名セクションにエンタイトルメントファイルがリストされている場合にのみ発生します。

私はこれをテストするためにまったく新しいアプリケーションを作成し、何がうまくいかなかったかを確認しました。これは完全に新しいテストアプリケーションで発生します(したがって、クリーンビルド、XCodeの開閉などが役立つとは思えません)。

何が足りないのですか?私はこれが起こった他のすべての時間を読みました、そして何も当てはまらないようです。

10
justin

これらの手順に従う必要があります

  • プロジェクトのinfo.plistのバンドル識別子を変更しましたか?

これがプロビジョニングプロファイルの識別子とも一致することを確認してください。

  • プロジェクト情報に移動します。ビルドをデプロイする構成を選択し、dist.plistファイルを追加したビルド設定をチェックインします。プロビジョニングプロファイルは、実行する必要があるものと同じです。

  • 配布用のビルドを作成している場合は、get-task-allowマークをオフに設定します

お役に立てれば。

2

できました!理由はあなたが間違った証明書を手に入れたからです!開発証明書を使用している場合、配布証明書を使用することはできません。

2
coolcloud

次の手順を実行します。

  1. Xcode-> Organizerからprovisiongファイルを削除します
  2. 開発者アカウントから再度ダウンロードします。配布タブからプロファイルをダウンロードしたことを確認してください。
  3. そのプロファイルをXcodeにドラッグアンドドロップします
  4. プロビジョニングプロファイルのアプリIDと一致するplistのバンドル識別子を変更します。
  5. アプリケーション設定目標とアクティブ目標に移動し、そこから利益を選択します。
  6. 次に、アプリを再構築して実行します。
2
Sandeep Dhama

テスト中の新しいデバイスをプロビジョニングプロファイルのIOSプロビジョニングプロファイルサイトに追加する必要があることがわかりました。

1
Kasimir Gregory

その価値のために、私はあるアプリでこの問題を抱えていましたが、別のアプリではありませんでした。 Target-> BuildSettings-> CodeSigningの「ProvisioningProfile」を「Automatic」に設定する必要があったようです。リスト内のいずれかを選択した場合、このエラーで失敗しました。

1
ThirdPrize

[プロジェクト]> [ビルド設定とターゲット]> [ビルド設定]のコード署名ID値が正しいことを確認しましたか?

1
Snowcrash

私はAppleからの新しく更新されたライセンス契約に同意していませんでした。

簡単に:開発者のアカウントにログインしてください->プロフィール->レビュー->契約書を読むか、弁護士に読んでもらいます->同意します(自分の意志で)->もう一度プロフィールをクリックしてプロフィールのステータスを確認してください。

私のシナリオでは、有効なコード署名エンティティが表示されませんでした。上記の手順に従うと、それが表示され、デバイスでアプリを実行したり、iPAファイルを作成したりすることができました。

1
iCodeAtApple

この問題は、ジェイルブレイクされたデバイスに適切に作成されたプログラムをインストールしようとすることに起因している可能性があることにも注意してください。少なくとも私の場合、すべての開発ユニットと私はこのエラーを受け取り続けました。 get-task-allow BOOLタイプをEntitlements.plistファイルに追加すると、エラーが発生しますが、ファイルはデバイスにインストールされました(ライブデバッグは機能しません)。

1
RichNes

このエラーを修正しようとする際のもう1つの落とし穴:組み込み拡張機能からプロビジョニングプロファイルを置き換える必要もあります。

私の場合、iOSアプリのプロビジョニングプロファイルは問題ありませんでした。テストする新しいデバイスのために、ウィジェットのプロビジョニングプロファイル(またはToday Extension)を更新する必要があることを理解するのに何時間もかかりました。

実行しようとしているターゲットだけでなく、関連するすべてのターゲットを確認してください。

0
Rachid Finge Jr

私もこのタイプのエラーが発生しました。現在のEntitlement.plistを削除し、新しいEntitlement.plistを追加することで、これを解決しました。私が実行しようとしていたプロジェクトは3.2SDKでビルドされていたため、現在は4.2を使用しています。それが私がエラーを起こした唯一の理由でした

0
Rupesh

[ターゲット]-> [機能]-> [関連ドメイン]に移動します

押す修正された問題ボタン

プロジェクトを実行する

0
Umair Ahmed

このエラーコードは多くの状況で使用されているようです。私の場合、DataProtectionClassをNSFileProtectionCompleteに設定した後、問題が発生し始めました。修正方法はまだわかりません。

0
Dave Teare

「iCloud」を使いたかったので、資格を削除することはできませんでした。少し掘り下げてみると、「iOSプロビジョニングポータル」のアプリ構成で「iCloud」が有効になっていないことが問題であることがわかりました。

それを有効にしてプロビジョニングを再生成することは、私にとってトリックでした。

0
dev_jac