2016-08-17 58 views
0

我測試谷歌從https://github.com/playgameservices/ios-basic-samples谷歌播放服務的iOS的推送通知是不工作

我沒有上傳所有APNS證書在谷歌遊戲控制檯(link)播放服務的iOS與TBMPSkeleton但在設備上運行遊戲時,我在收到邀請時或者在開發或生產環境中匹配狀態發生變化時都沒有收到任何通知。調試顯示遊戲確實成功接收了APNS令牌,我使用https://www.raywenderlich.com/123862/push-notifications-tutorial的php腳本測試了我的證書,併成功發送了推送通知。

那麼我的項目有什麼問題?我配錯了嗎?我正在使用XCode 7.3.1(7D1014),Google Play服務5.1.1

回答

-1

檢查Adding Push Notifications in Your iOS Game

很高興您能夠下載您的APNS證書。但這只是步驟1.後續步驟如下:

第2步。創建一個包含推送通知權利的供應配置文件。要了解如何創建配置文件,可以參閱Apple開發人員配置和開發文檔,在'創建和安裝配置文件'下。確保將配置文件拖到組織器中的測試設備。

第3步。將您創建的.p12文件上傳到Google Play開發者控制檯。 .p12文件必須採用PKCS#12格式,並且只能包含一個證書。

第4步。註冊您的應用程序以在用戶成功登錄後接收推送通知。在用戶成功登錄Google Play遊戲服務的地方,在finishedWithAuth:錯誤處理程序中添加以下代碼。這提出了標準的iOS推送通知對話框。如果您的遊戲已經通過在別處實現此代碼註冊了推送通知,那麼您不需要再次添加此行。

[[UIApplication sharedApplication] registerForRemoteNotifications: 
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert)]; 

第5步:在你的appDelegate,下面的代碼添加到回調,用於從APNS傳遞迴推送設備令牌。此設備令牌用於出站推送通知,您的應用必須將其註冊到Google Play遊戲服務推送服務。確保始終通過GPGManager註冊您的設備令牌,以啓用Google Play遊戲服務的推送通知。即使用戶尚未登錄, GPGmanager對象會緩存此令牌並將其保存直到用戶登錄。

- (void)application:(UIApplication *)application 
     didRegisterForRemoteNotificationsWithDeviceToken 
     :(NSData *)deviceToken { 
    NSLog(@"Got deviceToken from APNS! %@", deviceToken); 
    [[GPGManager sharedInstance] registerDeviceToken:deviceToken 
      forEnvironment:GPGPushNotificationEnvironmentSandbox]; 
} 
+0

感謝您的回答。是的,我確實按照此文檔併成功接收設備令牌,但我無法收到任何通知。你有什麼想法? – ttp98