2017-07-01 8 views
0

私はPushKit経由でVoIP通知を送信しようとしていますが、Production(Distribution)環境ではサーバーから「無効なトークン」を取得します。 2195しかし、私は、URLを変更する場合:ポートとssl://gateway.sandbox.push.apple.comプロダクション環境でPushKit通知を送信中に無効なトークンが発生しました

すべてが同じ証明書とURLを開発ENVで正常に動作しますssl://gateway.push.apple.com、私は余分なデータ

+0

あなたのp12ファイルが開発用か配布用であることを確認してください –

+0

@AbhishekThapliyal 'VoIPサービス証明書'の証明書の種類は1種類だけです。証明書は両方のenvで動作するはずです。 –

+0

Appleがこの配布と開発証明書を持っていることをもう一度確認してください。普通のAPNSでも2種類の配布と開発があります –

答えて

0

で「無効なトークン」のエラーを取得しますように見えますサンドボックス環境でクライアントが生成したのと同じVoipデバイストークンをサンドボックスとプロダクションの両方で使用しています。そのため、無効なトークンエラーが発生します。

これは機能しません。運用環境を使用する場合は、クライアント/アプリケーションが運用環境でデバイストークンを作成していることを確認する必要があります。 (サンドボックスを使用しているサーバーが運用環境を使用している場合、クライアントが生成したデバイストークンは使用できません)

Pl。同じデバイス上の同じアプリケーション/クライアントのサンドボックス/プロダクション環境用に個別のデバイストークンが生成されることに注意してください。それが役に立てば幸い。

+0

あなたの答えをありがとうが、私はすでに実動環境でプロダクショントークンを使用しています。私はまた、いくつかのトークンに対して、私はいくつかの奇妙な動作を見出しました。この無効トークンエラー。私は3つの異なるデバイスに(彼らの生産トークンにtestFlightからインストールされたすべての)プッシュを送信しようとしましたが、2人はエラーを取得していますが、もう1つは成功です! –

+0

プロダクションAPNSによって無効なトークンエラーが返されるのは、そのトークンがそのプロダクションサーバによってどのデバイスにも割り当てられていない場合だけです。クライアントアプリがプロダクションAPNSのみを使用してこのデバイストークンを要求したことが確かな場合、APNSはこの宛先の通知をルーティングできます。これは奇妙です。起こらないでください。あなたが言っていることは、もし本当であれば、APNSサーバ(Apple Serverの本質的には期待していない)でデバイストークン同期の問題があるように見えるということです。 – Ayush

+0

私は、あなたのアプリがデバイストークンをキャッシュしていないことを確認することをお勧めします。あなたのアプリが新しいプロダクションデバイストークンを登録できなかったため、キャッシュされたものが返されました。 (ちょうど1つの推測)。私はあなたのすべてのデバイス(アプリ)が生産証明書だけを使ってバンドルされていることを確認したと思います。 – Ayush