1

我的版本的Xcode 6.3.2是..我'建立一個離子的應用,並已在我的科爾多瓦 - iOS 4.1的安裝的PhoneGap-插件推1.8.4 0.1 ...push插件科爾多瓦IOS GCM不觸發註冊事件/不顯示設備令牌

我的代碼工作完全在Android,但在iOS我'無法註冊裝置憑證也沒有我在Xcode控制檯中看到任何錯誤。我按照所有的步驟並安裝開發推送通知證書和啓用以及

在Xcode中一般部分有選擇的球隊..下面是我的代碼

angular.module('starter', ['ionic', 'starter.controllers','ngCordova']) 

.run(function($ionicPlatform,$cordovaVibration,$state,$ionicPopup) { 
    $ionicPlatform.ready(function() { 
     var push = PushNotification.init({ 

    ios: { 
     senderID: "XXXXXXXXXXX", 
     alert: "true", 
     badge: "true", 
     sound: "true", 
     gcmSandbox: "true" 
    }, 

}); 

push.on('registration', function(data) { 
    alert(data.registrationId); 
    window.localStorage['gcm_token'] = data.registrationId; 
}); 

push.on('notification', function(data) { 
    // data.message, 
    // data.title, 
    // data.count, 
    // data.sound, 
    // data.image, 
    // data.additionalData 
}); 

push.on('error', function(e) { 
    window.localStorage['gcm_tokenn'] = e.message; 
}); 

}) 
}) 

我在想什麼?有在Xcode中沒有錯誤日誌已三重檢查這個..我已經添加在FCM中.P12證書......而且在實際設備上測試了這個,而不是模擬器

+0

您可以檢查此相關的[GitHub上的問題(https://github.com/phonegap/phonegap-plugin-push/issues/567)的建議,如果你建立你的應用程序作爲開發,那麼你需要設置'gcmSandbox:TRUE' 。如果你爲生產建立你的應用程序,那麼你需要設置'gcmSandbox:false'。我已經看到您已嘗試過可能的解決方法,但仍遇到錯誤。我查了這些論壇:[點擊這裏](https://forums.developer.apple.com/thread/46011)和[這裏](https://github.com/phonegap/phonegap-plugin-push/issues/842 ),而且這似乎是Apple APN之前的一個問題。 – abielita

回答

1

下能力這是我得到了它的工作..安裝操作系統MacOS的::塞拉利昂10.12.3的Xcode 8.2.1的PhoneGap-插件推後1.8.4 ..我做到了,

cordova platforms --save 
cordova plugins --save 
rm -rf platforms 
rm -rf plugins 
ionic state restore 

現在我得到令牌,但有其他的問題,而我第一次運行該應用程序,我得到一個錯誤說

the operation couldnt be completed com.google.iid error 6 

發生這種情況在第一時間..而whi勒我試圖用我的PHP代碼發送通知我得到後第一時間和NotRegistered成功..

下面是PHP代碼我使用

<?php 

$apiKey = "XXXXXXXXXXXXXXXXXXXXX"; 
$regId = 'kK4tkHyseLc:APA91bE6pozxxJC2_MZZtFC38mL5A3PRAaCekT1RLwGJcJZOHtsqtbxUZ56j-ZotoxRlCR8gEKqYbxqOQd37uSs38nJGZAZW7Nb4J6K7HuR5c46FIu05w8qsHUWlGvcQfl8fn-pY__Al'; 
    $url = 'https://gcm-http.googleapis.com/gcm/send'; 
    $post = '{"to" : "' . $regId . '","priority":"high","content_available":true,"time_to_live":2419200,"data":{"message":"GCM Notifier:Message Success","title":"GCM Notifier:Title Success"},"notification":{"title":"GCM Notifier:Title Success","body":"GCM Notifier:Message Success","sound":"default","badge":"1"}}'; 

    $headers = array(
      "Authorization:key=$apiKey", 
      'Content-Type:application/json' 
      ); 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

$result = curl_exec($ch); 
if (curl_errno($ch)) 
{ 
    echo 'GCM error: ' . curl_error($ch); 
} 
curl_close($ch); 
    echo $result; 
?> 

響應::

{"multicast_id":8300626558747339726,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"NotRegistered"}]} 
0

我有同樣的問題早。通過更新Xcode到最新版本(Xcode 8)解決了我的問題。要在應用程序中成功整合phonegap-plugin-push插件1.8.4,需要Xcode版本8 for iOS。

也不要忘記啓用推送通知在Xcode

+0

我會試試這個..目前Xcode 6.3.2沒有在功能下推送通知的選項。我會更新我的xcode和回覆,.. – Aniket

+0

是的。你必須將Xcode版本更新到8,這將有助於解決你的問題。 –

+0

您是否能夠將您的Xcode版本更新至8並且能夠解決您的問題? –

相關問題