web-dev-qa-db-ja.com

プッシュ通知資格の警告がありません

アプリID、配布証明書、プロビジョニングプロファイルを作成しました。プッシュ通知は最初は有効になっていませんでした。

次に、アプリにプッシュ通知を実装する必要があります。

アプリDでプッシュ通知を有効にし、プロビジョニングプロファイルを確認し、プロビジョニングプロファイルが無効であり、更新し、次回使用するために最新のプロビジョニングプロファイルをダウンロードしました。

次に、コード内のAPNSを介してプッシュ通知用のAPIを統合します。

ITunesConnectにアプリをアップロードすると、Appleから次のメールが届きます。

親愛なる開発者、

「Swanvi」の最近の配信で1つ以上の問題が見つかりました。配信は成功しましたが、次の配信で次の問題を修正することができます。

プッシュ通知資格の欠落-アプリにはAppleプッシュ通知サービスへの登録に使用されるAPIが含まれているようですが、アプリ署名の資格には「aps-environment」資格が含まれていません。アプリがAppleプッシュ通知サービスを使用する場合、プロビジョニングポータルでアプリIDがプッシュ通知に対して有効になっていることを確認し、「aps-environment」を含むDistributionプロビジョニングプロファイルでアプリに署名した後に再送信します資格。詳細については、ローカルおよびプッシュ通知プログラミングガイドの「プロビジョニングと開発」を参照してください。アプリがApple Push Notificationサービスを使用しない場合、アクションは不要です。この警告を停止するには、今後の送信からAPIを削除してください。サードパーティのフレームワークを使用している場合、APIの削除に関する情報について開発者に連絡する必要があります。

問題を修正したら、XcodeまたはApplication Loaderを使用して、新しいバイナリをiTunes Connectにアップロードできます。

App IDを再確認しました。プッシュ通知は、開発と実稼働で有効です。

プロビジョニングプロファイルに、プッシュ通知オプションが表示されます。

電子メールでこの警告が表示されるのはなぜですか?

61
Bis

次の2つを確認する必要があります:Xcodeのアカウントとdeveloper.Appleのアカウントで使用されるプロビジョニングプロファイル

プロビジョニングプロファイルに関するすべて。

ステップ1https://developer.Apple.com/account/ios/certificate/ に移動し、Activeを参照アプリに必要なiOS配布プロビジョニングプロファイル。それをクリックして、Enabled ServicesPush Notificationを有効にしていることを確認します。表示されない場合は、[編集]をクリックし、アップルが提供する手順に従って有効にします。有効になっている場合は完璧です。

distribution link

ステップ2:アプリに関連して表示されるInvalidプロビジョニングプロファイルを削除します(アプリにとって無効なプロファイルのみ)。次の手順でその理由を説明します。

STEP 3:Xcodeに移動->設定->詳細を表示(アカウントの場合)-> [オプション:無効なものがなくなったことを確認するには、rt -プロビジョニングプロファイルをクリックして、「Finderに表示」を選択し、そのフォルダーからすべてのプロビジョニングプロファイルを削除/移動します。] [すべてのプロファイルをダウンロード]をクリックします。これにより、ローカルプロビジョニングプロファイルが現在のプロファイルに置き換えられます。完了をクリックします。

STEP 4:アプリのターゲット->ビルド設定->コード署名で、プロビジョニング変数を展開して、DebugおよびReleaseタブを表示します。デフォルトでは、自動になります(これが、ステップ2で削除したばかりの無効なプロファイルをアプリが自動的に使用していた理由です)。 Releaseをより安全にするために、ステップ1に示すように、プッシュ通知が有効になっているActiveプロビジョニングプロファイルを選択します。

それでおしまい。

今すぐメールを受け取るべきではありません。

48
Anish Kumar

@Djeeraj V.S.正しい。 Cordovaは、プッシュ通知を必要としないアプリのこの要件を削除するために、条件付きコンパイルを追加しました。

この回答 に従ってClasses\AppDelegate.hのコードをコメントアウトすることもできますが、UIを介してコンパイルシンボルDISABLE_Push_NOTIFICATIONSを追加すると、将来のCordovaの恩恵を受け続けることができますアップグレード。

私は.NETのバックグラウンドから来ているので、条件付きコンパイルに精通していますが、XCodeでコンパイラフラグを機能させる方法の作成に少し時間を費やす必要がありました。

ここで魔法の言葉は「プリプロセッサマクロ」であることがわかります。 UIを介してグラフィカルに行われる方法は次のとおりです(XCode 6.1で行われた方法に注意してください)。

enter image description here

これが同じ状況の他の人々に役立つことを願っています。

16
Steven de Salas

私の場合、プロジェクトプロパティ内の[機能]ページを再度確認し、対応するAPNSメニューで[修正済みの問題]を押しました。今、このように見える必要があります enter image description here

XCode 11。機能ボタン(+)の押下を処理するには

enter image description here

9
Vyacheslav

私の場合、次の練習がうまくいきました。 Xcode 9.2

  1. Automatically manage signingに表示されるBuild Target > Signingを無効にしました
  2. プロビジョニングプロファイルを手動でインポートします。
2
Rohit Mandiwal

以前に通知を受け取っていたCordovaアプリがありますが、アプリから削除したかったのです。上記の回答に従ってみましたが、ビルドをアップロードしたときにこの問題が発生しました。通知設定を使用するプラグインがインストールされており、何らかの方法で通知の設定を有効にしていることに気付きました。

Iosプラットフォームを完全にcordova platform rm ios削除し、再度追加cordova platform add iosして、プラグインがios.jsonおよびfetch.jsonファイルから削除されたことを確認して、問題を解決しました。

0
Lirianna