почему документы gcm рекомендуют аннулировать регистрацию при обновлении приложения?

Из документов GCM :

When an application is updated, it should invalidate its existing registration ID, as it is not guaranteed to work with the new version. Because there is no lifecycle method called when the application is updated, the best way to achieve this validation is by storing the current application version when a registration ID is stored. Then when the application is started, compare the stored value with the current application version. If they do not match, invalidate the stored data and start the registration process again.

Когда в документах говорится, что «работа с новой версией не гарантируется», является ли это ограничением GCM или они предполагают возможные изменения в поведении моего приложения от версии к версии?

Со стороны приложения я могу более -или -меньше гарантировать, что последующие версии будут работать должным образом в отношении GCM и любого формата сообщения, -специфичного для приложения, который я придумал. Нужно ли мне повторно -регистрироваться?

Если да, то что следует использовать для определения кода версии или имени версии «новой версии» :? Насколько я понимаю, это «свободная форма», и разработчик приложения устанавливает для них любые значения, которые он выбирает. Итак, что, если я помещу обновление приложения в магазин, но не изменю имя версии или код версии; мне нужно повторно -зарегистрироваться в GCM?

Похоже, что GCM на самом деле хочет, чтобы приложение повторно -регистрировалось каждый раз, когда новая установка запускается в первый раз (и каждый раз, когда она последовательно запускается, пока не будет завершена регистрация )., независимо от значений в versionName и versionCode. Это точное утверждение?

10
задан jph 10 July 2012 в 22:11
поделиться