IBM Worklight: ошибка push-уведомления на устройстве Android

Я загрузил пример приложения для модуля push-уведомлений и попытался запустить его на вкладке Samsung 2. Я обнаружил, что для этого требуются senderId и Key, поэтому я создал эти значения с помощью консоли Google GCM. Затем я запустил приложение, и оно было успешным. Затем я подписался через образец приложения и нажал кнопку входа. После входа в систему мой LogCat показывает следующее:

03-14 13: 03: 10,648: V / GCMRegistrar (9351): Сохранение RegID на версии приложения 1 03-14 13: 03: 10,648 D / WLDroidGap (9351): зарегистрированный на сервере GCM с идентификатором регистрации APA91bEUF25J1woHwcfEhG-73XXUyRJw6ul26VF0GQJBJQ9gtgjg0QK5gQ9Nq2sAeHiOKCJGRlJJvZ_0CvibjwS_eg9IUkHKez9zVxbgCtPsWj85DuHv6JbzydQY182- HvkbfM45lGG8cF_ndknxnG8XpyaZnh55eQ

03-14 13:03:10.671: D/WLDroidGap(9351): Уведомление JavaScript об успешной регистрации

03-14 13:03:10.679: D/PushApplication(9351): токен устройства push-уведомлений изменился, обновляется идентификатор токена уведомления сервера.

03–14 13:03:10.687: D/PushApplication (9351): запрос [http://192.168.1.206:8080/apps/services/api/PushApplication/android/notifications]

03-14 13:03:10.710: D/PushApplication(9351): ответ [http://192.168.1.206:8080/apps/services/api/PushApplication/android/notifications] успех: /*-secure-

03-14 13:03:10.710: D/PushApplication(9351): {"ошибки":[],"успешно":true,"предупреждения":[],"информация":[]}*/

03–14 13:03:12.914: D/PushApplication (9351): запрос [http://192.168.1.206:8080/apps/services/api/PushApplication/android/notifications]

03–14 13:03:12.929: D/WLDroidGap(9351): Javascript-скрипт запрашивает диспетчеризацию в WL.Client.Push.__onmessage

03-14 13:03:52.625: D/PushApplication(9351): Запрос [логин]

03–14 13:03:52.695: D/PushApplication (9351): запрос [http://192.168.1.206:8080/apps/services/api/PushApplication/android/notifications]

03-14 13:03:52.750: D/PushApplication(9351): ответ [http://192.168.1.206:8080/apps/services/api/PushApplication/android/notifications] успех: /*-secure-

03-14 13:03:52.750: D/PushApplication(9351): {"isSuccessful":true,"WL-Authentication-Success":{"PushAppRealm":{"userId":"[email protected]"," атрибуты":{},"isUserAuthenticated":1,"displayName":"[email protected]"}}}*/

затем через некоторое время мой лог-кот показывает:

unregisterReceivers: Получатель не зарегистрирован: com.worklight.androidgap.plugin.Push$1@4128e920

и эта ошибка в веб-консоли:

{"WL-Authentication-Success":{"wl_deviceNoProvisioningRealm":{"userId":"device","attributes":{"mobileClientData":"com.worklight.core.auth.impl.MobileClientData@e0d191"}," isUserAuthenticated":1,"displayName":"device"}},,"WL-Authentication-Failure":{"wl_remoteDisableRealm":{"причина":"Ошибка входа"}}}*/

Далее после входа в систему и подписки он не показывает ничего, что позволило бы мне узнать, было ли уведомление успешно отправлено.


person User42590    schedule 14.03.2013    source источник


Ответы (1)


Поток неправильный. Вы не можете подписаться, пока не войдете в приложение. Сначала вы входите в систему, а затем нажимаете кнопку подписки, которая должна отображать всплывающее окно с сообщением о том, что подписка прошла успешно. Затем вы можете нажать кнопки isPushSupported и isSubscribed, чтобы убедиться в этом.

Последующая отправка уведомления также должна завершиться успешно.

Google может самостоятельно отменить регистрацию пользователей, которые какое-то время не получали push-уведомления (он не показывает, как долго это было сделано), возможно, это вызвало вашу проблему. Вы не указали достаточно четкие шаги воспроизведения.

person Idan Adar    schedule 14.03.2013
comment
откуда я должен войти?? - person User42590; 14.03.2013
comment
Я имею в виду, что в примере приложения вы должны сначала увидеть экран входа в систему, а только потом кнопки. - person Idan Adar; 14.03.2013
comment
Если вы говорите о входе в Gmail, то я уже вхожу через свою учетную запись на устройстве. и из этой учетной записи я создал свой ключ отправителя и идентификатор в API Google. Поэтому, когда я запускаю свое приложение, оно не спрашивает ни о каком входе в систему. Он прямо показывает мне страницу с 4 кнопками - person User42590; 14.03.2013
comment
любая помощь? я снова запускаю свой проект на устройстве, но он не запрашивает логин. - person User42590; 14.03.2013
comment
Хорошо, я решил свою проблему: в application_descriptor.xml не было securityTest=PushApplication-strong-mobile-securityTest. - person User42590; 14.03.2013