コルドバ アプリケーションでプッシュ通知プラグインを使用しています。GCM を使用して Android の通知を取得できましたが、非常に簡単でした。日曜日以来、ほぼ4日間、iOSは私にとって大きな苦痛です。今までやってきたことをシェアします。iOSデバイスでも通知が機能するように助けてください。
プラグインによると、アプリケーション側では、私のJavaスクリプトは次のようになります
myApp.controller('Register', function ($scope) {
$scope.regGCM = function () {
document.addEventListener('deviceready', onDeviceReady, false);
}
function onDeviceReady() {
var push = PushNotification.init({
"android": {
"senderID": "41502493944",
"sound": "true",
"vibrate": "true",
},
"ios": {
"alert": "true",
"badge": "true",
"sound": "true",
},
"windows": {}
});
push.on('registration', function (data) {
var deviceid = data.registrationId;
alert(deviceid);
});
push.on('notification', function (data) {
console.log("notification");
});
push.on('error', function (e) {
console.log("push error");
});
}
});
regGCM()
私のアプリケーションとそれのプッシュ通知を許可する許可を求めるiOSデバイスをトリガーするときreturns a token
。
次に、プッシュ通知をオンラインでテストするために、ファイル
が必要なこのサイトを使用しました。ファイルを作成するには、次のことを行いました。token
.pem
.pem
1)ここから p.notification 証明書を作成しました。
2)それをMacキーチェーンにインストールしました。
3) インストールされた証明書をpushcert.p12
ファイルとしてエクスポートしました。4)ターミナルで
このコマンド ( ) を実行すると、ファイルが取得されました。openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts
pushcert.pem
そのオンライン テストサイトでは、メッセージが送信されたと表示されますが、iOS デバイスに通知が届きませんでした。プッシュ通知は初めてで、正しい手順がわかりません。何か不足している可能性があります。cordova で iOS p.notification をどのように計算したかは誰にもわかりません。GCM を使用しているか、ネイティブ APN を使用しているかに関係なく、その方法は気にしません。
どんな助けでも大歓迎です。