2011-11-08 21 views
0

可能性の重複:
Is it possible to detect Android app uninstall?登録解除

私はすべてのユーザーにメッセージを送信することができるようにするために、アプリでC2DMサービスを実施しています。 Googleのc2dmのドキュメントでは、サービスにアプリケーションを登録する方法と登録を解除する方法についてよく説明されています。 しかし、アプリケーションがアンインストールされたときにイベントを取得できないとき、どのようにしてc2dmから登録を解除する必要がありますか?

答えて

1

ドキュメントは言う:

アプリケーションの実装によっては、それがユーザーにメッセージを受信するために登録解除のオプションを提供することがあります。 アプリケーションをアンインストールすると、登録解除の効果もあります。

私は、これはデバイスがこのの世話をすることを意味しますと言うだろう、とあなたはそれを心配する必要はありません。..

編集: は私が間違っていました。デバイスは、このの世話をしていません。.. を参照してください:Android C2DM : Duplicate message to the same device and Appソリューションは、プッシュメッセージにご登録IDを(の一部)を含み、およびお使いのデバイス上のチェックを行うことであるように

は思え

+0

"アプリケーションをアンインストールすると、登録解除の効果もあります。"私はこれに同意しない。アプリケーションを再インストールすると、すべての通知が倍増するためです。また、アンインストール/再インストールすると、通知が3倍になります。登録を解除する必要があります。 – AlexMok

+0

文書のどこにこれが書いてありますか? C2DMドキュメントでは、具体的には次のように書かれています。「登録IDは、アプリケーションが明示的に登録を解除するまで、またはGoogleがアプリケーションの登録IDを更新するまで続きます。 http://code.google.com/android/c2dm/ –

0

Google C2DMサービスは、アンインストールされたアプリケーションの検出に関して、パッシブモードで動作しています。

アプリケーションのアンインストール後(C2DMからの登録を解除せずに!!!)最初のプッシュ通知は、応答としてエラーを返しません。ただし、2回目のプッシュ通知は、アプリケーションがアンインストールされたことを認識できる「無効な登録」または「登録されていない」エラーコードを返します。

なぜなら、C2DMサーバーは応答コードをただちに返し、クライアントをプッシュしようとするからです。クライアントがアプリケーションのアンインストールを応答すると、そのアプリケーションはC2DMサーバーから削除されます。次のプッシュ試行では、エラーコードがすぐに返されます。

関連する問題