2014-12-23 3 views
0

Я пытаюсь проверить gcm.register("Sender_ID") гдеКак работает gcm.register («Sender_id»)?

gcm = GoogleCloudMessaging.getInstance(this); и this является контекст.

Когда я называю это в режиме самолета с помощью «Sender_ID», который я использовал ранее, он немедленно отбрасывает регистрационный идентификатор. Однако, когда я использую случайный Sender_ID, он генерирует исключение IOException.

Я бы не ожидал, что он узнает идентификатор регистрации для отправителей, для которого он уже зарегистрирован. Я ожидал исключение IOException для обоих. Использует ли он кеш?

Я по-прежнему собираюсь хранить регистрационный идентификатор в предпочтении, но эта функциональность дает возможность людям, потенциально просто вызывающим gcm.register("Sender_ID"), для извлечения идентификационных номеров телефонов вместо их хранения в другом месте.

ответ

2

Из прочтения documentation вы можете видеть, что после регистрации повторные вызовы метода register() возвращают исходный reg_Id (который, кажется, хранится в SharedPreferences).

Для того, чтобы перерегистрировать на тот же идентификатор отправителя, пользователь должен вызвать unregister() метод gcm = GoogleCloudMessaging.getInstance(this);

Надежда это осветленный ваши вопросы.

Смежные вопросы