Я хочу попробовать службу Google Cloud Messaging (GCM), и я столкнулся с проблемой в начале.Регистр облачных сообщений Google AUTHENTICATION_FAILED
У меня есть ошибка AUTHENTICATION_FAILED
при попытке зарегистрировать устройство в GCM. Я искал и все, что я нашел, это варианты неправильного пароля. Мой пароль правильный, и я использую только одну учетную запись.
Есть два способа реализации клиента GCM на Android: библиотека
- GCM с дополнительной баночкой, в настоящее время устарело.
- Google Play Services API
Я начал со второго курса и получил этот вопрос.
Я думал, что проблема в моем телефоне, но потом решил попробовать первый способ, который сработал! Однако он устарел и требует дополнительную банку, которая не кажется правильным.
В попытке понять причины ошибки я декомпилировал баннер Google Play Services и сравнил его с библиотекой GCM.
Оказывается, они оба имеют подобный метод, что-то вроде:
void register(Context context, String senderIds) {
Intent intent = new Intent("com.google.android.c2dm.intent.REGISTER");
intent.setPackage("com.google.android.gms"); // this one row are different
setPackageNameExtra(context, intent);
intent.putExtra("sender", senderIds);
context.startService(intent);
}
Разница в одном ряду:
В библиотеке GCM оно com.google.android.gsf
, где gsf
является Google Services Framework (я думаю), и это работает!
В банке API сервисов Google Play это com.google.android.gms
, и он не работает (ошибка AUTHENTICATION_FAILED).
Затем в библиотеке GCM я заменил «gsf» на «gms» и запустил. И у меня такая же ошибка AUTHENTICATION_FAILED! Если я вхожу в другой пакет, то он не работает.
Что мне нужно сделать, чтобы оно работало? Должен ли я настроить что-то в телефоне? Или это ошибка в сервисах Google Play? Кто-нибудь столкнулся с такой проблемой?
Заранее благодарен!
Спасибо, я не хочу делать сброс настроек. Я проверю его на другом устройстве. И пока ситуация не будет устранена, я буду использовать старую библиотеку или и то, и другое. – user2862139