0

プッシュ通知モジュールのサンプルアプリケーションをダウンロードし、Samsung Tab 2で実行しようとしました。senderIdとKeyが必要であることがわかったため、GoogleのGCMコンソールを使用してこれらの値を作成しました。その後、アプリを実行して成功しました。次に、サンプルアプリを介してサブスクライブし、ログインボタンを押しました。ログイン後、LogCatは次のように表示されます。

3月14日13:03:10.648:V / GCMRegistrar(9351):保存regIdアプリのバージョンに1 3月14日13:03:10.648:D / WLDroidGap(9351):登録されている登録IDを持つ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):プッシュ通知デバイストークンが変更され、サーバー通知トークンIDが更新されました。

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):{"errors":[]、 "isSuccessful":true、 "warnings":[]、 "info":[]} * /

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": "hello_13@gmail.com"、 "属性":{}、" isUserAuthenticated ":1、" displayName ":" hello_13@gmail.com "}}} * /

それからしばらくすると、私のログ猫は次のように表示します。

unregisterReceivers:受信者が登録されていません:com.worklight.androidgap.plugin.Push $ 1 @ 4128e920

Webコンソールでのこのエラー:

{"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 ":{" reason ":" Login Failed "}}} * /

次にログインしてサブスクライブした後、通知が正常にプッシュされたかどうかを知ることができるものは何も表示されません。

4

1 に答える 1

1

流れが間違っています。アプリケーションにログインする前にサブスクライブすることはできません。最初にログインしてから、[購読]ボタンをクリックすると、購読が成功したことを示すポップアップが表示されます。次に、isPushSupportedボタンとisSubscribedボタンをクリックして、これを確認できます。

その後、通知を送信することも成功するはずです。

Googleは独自に、プッシュ通知をしばらく受信していないユーザーの登録を解除する場合があります(それがどのくらいの期間行われたかは明らかになりません)。おそらくそれが問題の原因でした。十分に明確な再現手順を指定していません。

于 2013-03-14T09:08:02.660 に答える