アーバンエアシップ(C2DM経由)を介してプッシュ通知を受信するAndroidアプリケーションの問題に気づきました。
アプリケーションは、最初にインストールされたときにアーバンエアシップに登録されます。ユーザーがアプリを起動すると、アプリが接続するシステムにユーザーIDとパスワードを提供するように求められます。認証が成功すると、このユーザーIDがこのインスタンスのUrbanAirshipエイリアスとして割り当てられます。
この問題は、ユーザーがアプリのアプリケーションデータをクリアしたときに発生します。次回アプリを起動すると、Urban Airshipに再登録されますが、別のAPIDを受け取ります。ユーザーがクレデンシャルを再度入力すると、同じデバイスを参照する同じエイリアスを持つ2つの異なるAPIDがあります。ブロードキャストメッセージまたはそのエイリアス宛てのメッセージを送信するたびに、アプリはメッセージを2回受信します。明らかに、私はこれが起こってほしくない。
同時に、ユーザーが2つの異なるデバイス(たとえば、電話とタブレット)にアプリをインストールする可能性は完全にあります。その場合、2つの異なるAPIDに同じエイリアスが割り当てられます。これで問題ありません。 。私の問題は、2つのAPIDが同じデバイスを参照している場合です。
私はこれを防ぐ方法を見つけようとしています。ユーザーがアプリケーションデータをクリアすることを選択したときに発生する何らかのインテントがあるのではないかと期待していましたが、そのようなインテントは存在しないようです。
他の誰かがこの問題に遭遇しましたか、そしてあなたはそれの解決策を思い付くことができましたか?