Регистр обмена сообщениями Google Cloud AUTHENTICATION_FAILED
Я хочу попробовать сервис Google Cloud Messaging (GCM), и в начале я столкнулся с проблемой.
Я получаю ошибкуAUTHENTICATION_FAILED
при попытке зарегистрировать устройство в GCM. Я искал, и все, что я нашел, были варианты неправильного пароля. Мой пароль правильный, и я использую только одну учетную запись.
Существует два способа реализации клиента GCM на Android:
Библиотека GCM с дополнительным jar, теперь не рекомендуется.API Google Play ServicesЯ начал со второго курса и получил эту проблему.
Я думал, что проблема в моем телефоне, но затем решил попробовать первый способ, который работал! Тем не менее, он устарел и требует дополнительной банки, которая не кажется правильным.
В попытке понять причины ошибки я декомпилировал jar-файл Служб Google Play и сравнил его с библиотекой 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 (наверное), и оно работает!
В Google Play Services API jar этоcom.google.android.gms
, И это не работает (ошибка AUTHENTICATION_FAILED).
Затем в библиотеке GCM я заменил «gsf» на «gms» и запустил. И я получил ту же ошибку AUTHENTICATION_FAILED! Если я ввожу другой пакет, он не работает.
Что мне нужно сделать, чтобы это работало? Должен ли я что-то настроить в телефоне? Или это ошибка в Сервисах Google Play? Кто-нибудь сталкивался с такой проблемой?
Заранее спасибо!