web-dev-qa-db-ja.com

Appleストアの送信はエラーITMS-90046で失敗しますが、関連付けられたドメインは資格に含まれていません

アプリとWatchkitアプリを最初に作成したとき、「関連付けられたドメイン」機能を有効にしました。ウォッチキット拡張機能とコンパニオンアプリの両方の[機能]パネルで無効にし、各info.plistからキーが削除されていることを確認しました。

Appleの「証明書、識別子、プロファイル」ページに移動し、Watchkitアプリ、拡張機能、アプリごとにアプリIDを選択し、「関連付けられたドメイン」のチェックを外して、それぞれのプロビジョニングプロファイルを再生成し、ダウンロードしてインストールしました。

Ctrl-Shift-Command-Kを完全にクリーンアップし、再起動して、再構築しました。アプリストアにまとめると、以下のエラーメッセージが表示されます。

Xcode内でプロジェクト検索を実行しましたが、com.Apple.developer.associated-domainsキーが見つかりません。ビルドディレクトリ、nadaを検索しました。このキーが実際に私のコードに存在するとは思わないが、iTunesConnectはそこにあると考え、「*」に設定されているようだ。

Screen shot of error message itms-90046 from Xcode Organizer

12
brianfit

これはバグだと思います。

コンパニオンアプリとWatchkit拡張機能の両方のEntitlements.plistに新しい配列アイテム「com.developer.Apple.associated-domains」とwebcredentialsの有効なドメイン:stringを挿入するだけで、回避策を管理しました。プロビジョニングファイルもアプリまたは拡張機能の[機能]タブも関連付けられたドメインに対して有効になっていないため、これは実際的な効果はありませんが、itunesconnectのコードスキャナーが存在しないキーの無効な値「*」をトリップしていたことを停止しました。

Screenshot of Entitlements.plist

8
brianfit

この問題を修正するには:

  • ログインApple Deveveloper Center
  • 証明書、識別子、プロファイルに移動します。
  • 識別子/アプリIDに移動します。
  • アプリIDを選択して編集
  • 関連するドメインのチェックを外します
  • セーブ

アプリIDに関連付けられているプロビジョニングファイルを再生成する必要があります。何らかの理由で、「関連ドメイン」が私のアプリでチェックされました。選択を解除すると、AppStoreの送信が機能しました。

enter image description here

enter image description here

23
Ciprian Rarau

関連付けられたドメインを使用する場合は、Entitlements.plist > com.developer.Apple.associated-domainsの各エントリが次の形式を使用していることを確認してください。

<service>:<fully qualified domain>[:port number]

例えば。

webcredentials:www.example.com
applinks:www.example.com
activitycontinuation:www.example.com

[:port number]はオプションですが、<service>および<fully qualified domain>必須です!

5
Blank

アプリ送信失敗エラーから、私が理解しているのは、プロビジョニングプロファイルで「関連付けられたドメイン」がまだ有効になっていて、アプリケーションの「資格」ファイルにない可能性があることです。

したがって、明らかに2つのシナリオがあります。

シナリオ1:「関連付けられたドメイン」をサポートしますか?これは、「ユニバーサルリンク」などの機能に対して有効にする必要があります。

次のリンクを参照してください。

https://developer.Apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/AddingCapabilities/AddingCapabilities.html

この場合、「エンタイトルメント」ファイルを手動で編集しないでください。代わりに、手順に従ってください。

1。 Xcodeでプロジェクトファイルを選択します。

2。 「ターゲット」の下で適切なターゲットを選択します

3。 「一般」の横にある「機能」を選択します

4。以下に示すように、「関連ドメイン」のオプションが表示されます。

enter image description here

5。 「関連ドメイン」を有効にします。 「関連ドメイン」を有効にすると、Xcodeは開発者アカウントにログインするように要求し、AppIdおよびプロビジョニングプロファイルと同期します。

上のスクリーンショットで述べたように、「関連ドメイン」を有効にしながら2つのことを行います

  • 関連付けられたドメインの資格を資格ファイルに追加します。
  • 関連するドメイン機能をアプリIDに追加します。

Xcodeと開発者アカウントからの設定の同期に問題がある場合は、次のチェックボックスが有効になっていることを確認してください。

enter image description here

また、社内およびアプリ配布のプロビジョニングプロファイルが適切に更新され、同期されていることを確認してください。

ほとんどの作業はXcode自体によって実行されます。耳を傾け、理解する必要があります。

シナリオ2:アプリに「Associated-Domain」は必要ありません"機能。この場合、@ CiprianRarauの回答に従ってください。そのよく説明されています。

3
arango_86

ERROR ITMS-90164/90046:Invalid Code Signing Entitlements で述べられているように、クリーンビルドを実行することで問題を解決できました。記録のために、私はエラーコードITMS-90164を取得していました。

enter image description here

2
Andrej
  • 「実行可能ファイルは無効な資格で署名されました」というメッセージが表示されていました
  • グーグルで検索するといくつかの有用なヒントが得られましたが、^メッセージは止まりませんでした
  • 移動先:Xcode>ウィンドウ>デバイス
  • 次に:[デバイス]ウィンドウの左下隅にある[デバイスコンソールを表示する]ボタンを選択しました
  • ログのボタンから始めて、情報をスキャンして問題を見つけ、短時間で修正しました
  • 私の場合、com.Apple.developer.associated-domainsの資格が含まれており、associated-domainsを保持する必要がありました。
  • 将来、デバイスのエラーメッセージがあるときはいつでも、デバイスコンソールを使用します。これは時間の節約になります。
  • 短時間で問題を解決しました
  • ところで、あなたの助けをありがとう
0
B. Wason