2017-04-11 7 views
1

私はcordovaプラグインを使用していますphonegap-plugin-push --variable SENDER_ID = XXXXXXXX このプラグインを使用しています。そして、javascriptファイルに次のコードを追加しました。コードを挿入する

function setupPush() { 
    var push = PushNotification.init({ 
     "android": { 
      "senderID": "XXXXXXXX" 
     }, 
     "ios": { 
     "sound": true, 
     "alert": true, 
     "badge": true 
     }, 
     "windows": {} 
    }); 

    push.on('registration', function(data) { 
     console.log("registration event: " + data.registrationId); 
     var oldRegId = localStorage.getItem('registrationId'); 
     if (oldRegId !== data.registrationId) { 
      // Save new registration ID 
      localStorage.setItem('registrationId', data.registrationId); 
      // Post registrationId to your app server as the value has changed 
     } 
    }); 

    push.on('error', function(e) { 
     console.log("push error = " + e.message); 
    }); 
} 

「TypeError:未定義のメソッド 'init'を呼び出すことができません」というエラーが表示されます。

+0

私の回答はあなたの問題に全く役立ちましたか? –

答えて

0

これは、通常、onDeviceReadyの後にこれを実行していない場合に発生します。この発生後(プッシュ通知、カメラなど)まで、ネイティブデバイスAPIにはアクセスできません。

function onDeviceReady() { 

    // Sets up your push notifications 
    setupPush(); 
} 

// Fires when device is ready. 
document.addEventListener("deviceready", onDeviceReady, false);