62

を設定する8つのプッシュ通知機能や資格ファイルを、xcode 7とは異なり、プッシュ通知の設定を行うxcode 8を使用してxcode 8機能は(写真を以下のようTARGETS -> AppName -> Capabilitiesに位置)を切り替えるプッシュ通知の必要性を開発者のターンを、 push notifications capabilitiesXcodeの

それ我々は

に文字列を変更した場合、

//AppName.entitlements 
<key>aps-environment</key> 
<string>development</string> 

を以下としてではなく製品版AppのAppName.entitlementsファイルを生成します。

//AppName.entitlements 
<key>aps-environment</key> 
<string>production</string> 

は、機能は

Capabilities warning

、それは文字列値がAPS-環境で指定かかわらずだが、我々はまだそうapplication:didRegisterForRemoteNotificationsWithDeviceToken:

でプッシュデバイストークンを取得することができます警告を表示しますプッシュ通知エンタイトルメントの正しい設定は何ですか? ありがとう

+2

その上の任意のニュース開かれていると思いますか?私も "生産"オプションを試しましたが、XCodeの力は "問題を修正"をクリックした後に "開発"に変更されます – WedgeSparda

+4

私はアプリをアーカイブし、奇妙な '開発'オプションを使ってAppstoreに提出し、引き続きリモートプッシュ通知を受け取ることができます。その間、アーカイブされたアプリケーションのmobileprovisionファイルは、私のアプリで 'production' 'aps-environment'オプション –

+1

を表示します。デバッグ時にapnが正常に動作します。エンタープライズ配布用にリリースしたときにxcode 8.1 iOSはプッシュ通知... –

答えて

32

私は今日Xcode 8 GMでそれを苦労していました。設定を無効にし、開発者のポータルプロビジョニングプロファイルを削除して再生成して設定を再度有効にした後、Xcodeで警告を取り除くことができました。エンタイトルメント・ファイルを聴いていないことを覚えておいてください。私は開発環境でそれを残し、アーカイブの後、私は正しい環境設定(生産)を得ました。

は、XcodeのもGM

+3

ありがとう、私は現在、この奇妙なオプションを使用してAppsを提出する必要があると思いますが、正しいリモートプッシュ通知を受け取ることができます。 Appleの修正を待つ。 –

+2

私たちのチームは、すべてのローカルプロビジョニングプロファイルを吹き飛ばし、手作業でコード署名し、検証済みのプロダクションプロファイルをインポートするにもかかわらず、生産に変更する価値を得ることはできません – Shaun

+0

@Shaunエンタイトルメントファイルで変更しようとしますかアーカイブして提出しようとした後、主催者に表示されますか?オーガナイザに表示されている場合は、プロジェクトの[全般]タブで[署名を自動的に管理]のチェックを外し、ドロップダウンから正しいプロビジョニングプロファイルを選択してください。 – Shardon

0

に私の問題は、私のプッシャークライアントが古くなっていただったが、デバッグトークンに正常にプッシュするだろうカントーstilly非常にバグがあるようです。私がまだ解決に取り組んでいる他の問題は、legacy-apiを有効にしてジム経由でアプリをエクスポートできるだけなので、apns環境を '制作'に設定せず、 '開発'埋め込まれたmobile.provision 'ファイル。私はしかし、apns(prod)で動作するようにxcodeオーガナイザを使ってアプリを正常にデプロイすることができました。

0

私はよりよい解決策は、プロジェクトパッケージとオープンproject.pbxproj

変更CODE_SIGN_ENTITLEMENTS

CODE_SIGN_ENTITLEMENTS = "your-app/production.entitlements"; 
+2

彼はすでにエンタイトルメントファイルをプロジェクトにリンクしていますが、問題はXcode UIに警告が表示され、「問題を修正」をクリックするとエンタイトルメントファイルに「開発」という値が含まれていることになりますあなたのアプリをリリースしているとき。 –