Регистрация устройства Urban Airship с созданием нового APID после очистки данных приложения

Я заметил проблему с моим приложением для Android, которое получает push-уведомления через Urban Airship (через C2DM).

Приложение регистрируется в Urban Airship при первой установке. Когда пользователь запускает приложение, его просят указать идентификатор пользователя и пароль для системы, с которой взаимодействует приложение. После успешной аутентификации этот идентификатор пользователя назначается в качестве псевдонима Urban Airship для данного экземпляра.

Проблема возникает, когда пользователь очищает данные приложения для приложения. При следующем запуске приложение перерегистрируется в Urban Airship, но получает другой APID. Пользователь снова вводит свои учетные данные, и теперь у меня есть два разных APID с одним и тем же псевдонимом, относящимся к одному и тому же устройству. Всякий раз, когда я отправляю широковещательное сообщение или сообщение, направленное на этот псевдоним, приложение получает сообщение дважды. Очевидно, я не хочу, чтобы это произошло.

В то же время вполне возможно, что у пользователя может быть установлено приложение на двух разных устройствах (скажем, на телефоне и планшете), и в этом случае у меня будет один и тот же псевдоним, назначенный двум разным APID, и это будет нормально. . Моя проблема заключается в том, что два APID относятся к одному и тому же устройству.

Я пытаюсь выяснить, как я могу предотвратить это. Я надеялся, что может быть какое-то намерение, которое срабатывает, когда пользователь решает очистить данные приложения, но, похоже, такого намерения не существует.

Кто-нибудь еще сталкивался с этой проблемой, и вы смогли придумать решение для нее?


person Jay Lamont    schedule 05.10.2012    source источник
comment
Вы когда-нибудь находили решение этой проблемы?   -  person Dean Wild    schedule 06.11.2012


Ответы (1)


Похоже, что городской воздух решил проблему в конце. Теперь, если несколько идентификаторов устройств зарегистрированы под одним и тем же псевдонимом, они просто отправляют сообщение последнему зарегистрированному. Хотя это устраняет вашу проблему, но создает новую проблему другого типа, как если бы у некоторых пользователей есть два идентификатора устройств, зарегистрированных под некоторым псевдонимом, только последний получает push-уведомление. Но получение нескольких уведомлений на одном устройстве из-за нескольких регистраций является более заметным и плохим вариантом использования, поэтому я думаю, что они должны были рассмотреть этот компромисс .

person Sahil Dhankhar    schedule 18.03.2013