4

Apple のプッシュ フィードバック サービスから返されたトークンのリストを取得するとき、これらは (そのアプリの pem 証明書を使用して) 呼び出しを行ったアプリのみに固有のものなのか、それとも Apple がすべてのアプリのトークンを返送するのか疑問に思っています。同じアカウントの下にアプリ ID がありますか?

私が尋ねる理由は、プッシュを送信する前にトークンを削除できるように、フィードバック サービスをチェックするスクリプトがあるからです。スクリプトをコピーして、新しいアプリ用の新しいサブディレクトリに設定し、適切なデータベース情報をすべて変更して、この新しいアプリ用の新しい pem ファイルを作成しました。

これは新しいアプリであるため、データベースにはトークンが 1 つしかなく、まだプッシュを送信していませんが、スクリプトを実行すると、フィードバック サービスから 1200 個のトークンを削除する必要があることが報告されました。私はこれを予期していなかったので、他のアプリからではなく、この 1 つのアプリのデータベースからそれらのトークンを削除することのみを確認していました。

Apple 開発者ページには、「この目的のために、Apple プッシュ通知サービスには、APNが配信試行に失敗したデバイスのアプリケーションごとのリストを継続的に更新するフィードバック サービスが含まれています」と記載されているため、混乱しています。すべてのアプリケーションではなく、アプリケーションごとにのみトークンを取得します。

フィードバック サービスが複数のアプリでどのように機能するかを確認または否定することはできますか?

ありがとう

4

2 に答える 2

2

Apple にメールを送信して約 2 週間待った後、最終的に次のような応答がありました。

フィードバック サービスへの接続には、APNs ゲートウェイへの接続に使用するのと同じ TLS/SSL ID (証明書と秘密キー) が使用されます。APNs は、証明書の UserID 属性から通信するアプリを識別します。

したがって、通知を送信するためにアプリごとに APNs への個別の接続を確立する必要があるのと同様に、フィードバック サービスについても同じことを行う必要があります。

そのため、アプリごとにフィードバック サービスへの個別の接続を作成する必要がありました。

于 2012-05-07T23:27:49.613 に答える
2

これに関するいくつかの情報を見つけました:

APNS フィードバック サーバーは、最後のフィードバック リクエスト以降に「期限切れ」になったデバイス トークンのみを返します。

ソース

つまり、いくつかのアプリに送信し、Apple に X 回プッシュした後、feedback() を呼び出し、feedback() にはすべてのアプリからの非アクティブなトークンが含まれます。

私の現在の解決策は、アップルにプッシュするたびにフィードバックを呼び出すことです。今のところ十分です ©

于 2012-04-12T07:01:13.660 に答える