2014-03-14 73 views
3

我想在我的PhoneGap的應用程序來實現一個功能,它可以接收推送通知我指以下博客可以這樣做:無法使用Phonegap Build在應用程序中註冊PushPlugin?

http://devgirl.org/2013/07/17/tutorial-implement-push-notifications-in-your-phonegap-application/

我已經拿到了「谷歌Cloud Messaging Project ID「和」Google Cloud Messaging API Key for above Project ID「(服務器需要) 我正在關注PhoneGap Build的插件安裝,據此我添加了

<script type="text/javascript" src="PushNotification.js"></script> 

我的index.html文件。

,並添加

<gap:plugin name="com.phonegap.plugins.pushplugin" /> 

我的config.xml文件。

我已經在config.xml中指定的PhoneGap的版本爲3.1.0,以及

<preference name="phonegap-version" value="3.4.0" /> 

要註冊與谷歌雲消息服務應用程序來接收推送通知。我在下面給我的index.html的頭部分的代碼

<script> 
     if (window.cordova) { 
      if ((navigator.userAgent.match(/Android/i)) == "Android") { 


       pushNotification = window.plugins.pushNotification; 

       PushNotification.register(successHandler, errorHandler, { "senderID": "469325418209", "ecb": "onNotificationGCM" }); 

       function successHandler(result) { 
        alert('Callback Success! Result = ' + result); 
       } 

       function errorHandler(error) { 
        alert(error); 
       } 

       function onNotificationGCM(e) { 
        switch (e.event) { 
         case 'registered': 
          if (e.regid.length > 0) { 
           console.log("Regid " + e.regid); 
           alert('registration id = ' + e.regid); 
          } 
          break; 

         case 'message': 
          // this is the actual push notification. its format depends on the data model from the push server 
          alert('message = ' + e.message + ' msgcnt = ' + e.msgcnt); 
          break; 

         case 'error': 
          alert('GCM error = ' + e.msg); 
          break; 

         default: 
          alert('An unknown GCM event has occurred'); 
          break; 
        } 
       } 

      } 
     } 

    </script> 

當我使用的PhoneGap構建應用程序和我的手機上運行它,它正常運行,但在任警報 上的成功失敗或錯誤PushNotification.register在應用程序啓動時未被觸發。

我錯過了一個步驟或在執行步驟中犯了錯誤嗎?任何建議或指導實施推送通知功能表示讚賞。

+0

我有同樣的問題 – SMUsamaShah

+0

@ LifeH2O你找到了解決辦法嗎? – Hemantsom

+1

是的!在onNotificationGCM可以被調用之前,我在另一頁上做了重定向。改變了這個問題。 – SMUsamaShah

回答

1

描述的步驟請確保您使用GCM的瀏覽器添加推送插件或android鍵。

+0

是的,我使用的是Android鍵,但是當我運行時該函數不會觸發應用程序。 – Hemantsom

+0

它是否成功識別Android平臺? – ConnectingCode

+0

是的,它能夠識別Android平臺 – Hemantsom

0

可以從CLI這是在github上

[https://github.com/phonegap-build/PushPlugin.git][1] 

只需添加插件,並按照在github上

phonegap local plugin add https://github.com/phonegap-build/PushPlugin.git 
+0

該插件似乎已安裝,但功能PushNotification.register不會因某種原因而觸發。 – Hemantsom

+0

是否顯示日誌中的錯誤?你有沒有嘗試在其他設備? – iamsuman

+1

你可以去這裏http://apigee.com/docs/app-services/content/tutorial-push-notifications-sample-app進一步研究 – iamsuman

相關問題