2013-03-27 5 views
1

푸시 알림을 추가하려고하는 앱 (지금은 안드로이드)을 만들고 있습니다. 푸시 알림을 보내기 시작할 수 있도록 장치 ID를 검색하기 위해 코드를 디버그하려고하는 여러 포럼을 살펴 보았습니다. 아래 코드를 붙여 넣습니다.android 용 phonegap으로 푸시 알림을 설정하는 방법

미리 감사드립니다. 의 Config.xml

<feature name="http://api.phonegap.com/1.0/device" /> 

<preference name="phonegap-version" value="2.3.0" /> 
<preference name="orientation"  value="portrait" /> 
<preference name="target-device" value="universal" /> 
<preference name="fullscreen"  value="false" /> 
<preference name="android-minSdkVersion" value="4" /> 
<preference name="splash-screen-duration" value="5000" /> 
<feature name="http://api.phonegap.com/1.0/file"/> 
<feature name="http://api.phonegap.com/1.0/geolocation"/> 
<feature name="http://api.phonegap.com/1.0/network"/> 
<feature name="http://api.phonegap.com/1.0/notification"/> 

<gap:plugin name="BarcodeScanner" /> <!-- latest release --> 
<gap:plugin name="GAPlugin" /> <!-- latest release --> 
<gap:plugin name="PushPlugin" value="com.plugin.GCM.PushPlugin" /> 

답변

0

index.html을

<script> 
    var pushNotification; 

pushNotification = window.plugins.pushNotification; 

// iOS 
function onNotificationAPN(event) { 
    if (event.alert) { 
     navigator.notification.alert(event.alert); 
    } 

    if (event.sound) { 
     var snd = new Media(event.sound); 
     snd.play(); 
    } 

    if (event.badge) { 
     pushNotification.setApplicationIconBadgeNumber(successHandler, event.badge); 
    } 
} 


// Android 
function onNotificationGCM(e) { 
    switch(e.event) 
    { 
     case 'registered': 
      if (e.regid.length > 0) 
      { 
       // Your GCM push server needs to know the regID before it can push to this device 
       // here is where you might want to send it the regID for later use. 
       alert('registration id = e.regid'); 
      } 
     break; 

     case 'message': 
      // if this flag is set, this notification happened while we were in the foreground. 
      // you might want to play a sound to get the user's attention, throw up a dialog, etc. 
      if (e.foreground) 
      { 
       $("#app-status-ul").append('<li>--INLINE NOTIFICATION--' + '</li>'); 

       // if the notification contains a soundname, play it. 
       var my_media = new Media("/android_asset/www/"+e.soundname); 
       my_media.play(); 
      } 
      else // otherwise we were launched because the user touched a notification in the notification tray. 
       $("#app-status-ul").append('<li>--BACKGROUND NOTIFICATION--' + '</li>'); 

      $("#app-status-ul").append('<li>MESSAGE -> MSG: ' + e.payload.message + '</li>'); 
      $("#app-status-ul").append('<li>MESSAGE -> MSGCNT: ' + e.payload.msgcnt + '</li>'); 
     break; 

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

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

// result contains any message sent from the plugin call 
function successHandler (result) { 
    alert('result = '+result) 
} 

// result contains any error description text returned from the plugin call 
function errorHandler (error) { 
    alert('error = '+error) 
} 


function onLoad() { 
     document.addEventListener("deviceready", onDeviceReady, false); 
      alert('device loaded') 

    } 

    // Cordova is loaded and it is now safe to make calls Cordova methods 
    // 

$(document).ready(function() { 

    alert('device ready jquery') 
     // Now safe to use the Cordova API 
pushNotification.register(successHandler, errorHandler,{"senderID":"uvumobile2012","ecb":"onNotificationGCM"}); 
}) 

</script> 

헤드 다음 URL 또한

https://github.com/hollyschinsky/PushNotificationSample30/

에서 푸시 알림을 보낼 샘플 응용 프로그램을 다운로드 할 수 있습니다 당신은 다음 url에서 자습서를 얻을 것이다

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

관련 문제