アプリ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を再確認しました。プッシュ通知は、開発と実稼働で有効です。
プロビジョニングプロファイルに、プッシュ通知オプションが表示されます。
電子メールでこの警告が表示されるのはなぜですか?
次の2つを確認する必要があります:Xcodeのアカウントとdeveloper.Appleのアカウントで使用されるプロビジョニングプロファイル
プロビジョニングプロファイルに関するすべて。
ステップ1: https://developer.Apple.com/account/ios/certificate/ に移動し、Active
を参照アプリに必要なiOS配布プロビジョニングプロファイル。それをクリックして、Enabled Services
がPush Notification
を有効にしていることを確認します。表示されない場合は、[編集]をクリックし、アップルが提供する手順に従って有効にします。有効になっている場合は完璧です。
ステップ2:アプリに関連して表示されるInvalid
プロビジョニングプロファイルを削除します(アプリにとって無効なプロファイルのみ)。次の手順でその理由を説明します。
STEP 3:Xcodeに移動->設定->詳細を表示(アカウントの場合)-> [オプション:無効なものがなくなったことを確認するには、rt -プロビジョニングプロファイルをクリックして、「Finderに表示」を選択し、そのフォルダーからすべてのプロビジョニングプロファイルを削除/移動します。] [すべてのプロファイルをダウンロード]をクリックします。これにより、ローカルプロビジョニングプロファイルが現在のプロファイルに置き換えられます。完了をクリックします。
STEP 4:アプリのターゲット->ビルド設定->コード署名で、プロビジョニング変数を展開して、Debug
およびRelease
タブを表示します。デフォルトでは、自動になります(これが、ステップ2で削除したばかりの無効なプロファイルをアプリが自動的に使用していた理由です)。 Release
をより安全にするために、ステップ1に示すように、プッシュ通知が有効になっているActive
プロビジョニングプロファイルを選択します。
それでおしまい。
今すぐメールを受け取るべきではありません。
@Djeeraj V.S.正しい。 Cordovaは、プッシュ通知を必要としないアプリのこの要件を削除するために、条件付きコンパイルを追加しました。
この回答 に従ってClasses\AppDelegate.h
のコードをコメントアウトすることもできますが、UIを介してコンパイルシンボルDISABLE_Push_NOTIFICATIONS
を追加すると、将来のCordovaの恩恵を受け続けることができますアップグレード。
私は.NETのバックグラウンドから来ているので、条件付きコンパイルに精通していますが、XCodeでコンパイラフラグを機能させる方法の作成に少し時間を費やす必要がありました。
ここで魔法の言葉は「プリプロセッサマクロ」であることがわかります。 UIを介してグラフィカルに行われる方法は次のとおりです(XCode 6.1で行われた方法に注意してください)。
これが同じ状況の他の人々に役立つことを願っています。
私の場合、次の練習がうまくいきました。 Xcode 9.2
Automatically manage signing
に表示されるBuild Target > Signing
を無効にしました以前に通知を受け取っていたCordovaアプリがありますが、アプリから削除したかったのです。上記の回答に従ってみましたが、ビルドをアップロードしたときにこの問題が発生しました。通知設定を使用するプラグインがインストールされており、何らかの方法で通知の設定を有効にしていることに気付きました。
Iosプラットフォームを完全にcordova platform rm ios
削除し、再度追加cordova platform add ios
して、プラグインがios.json
およびfetch.json
ファイルから削除されたことを確認して、問題を解決しました。