2015-11-06 38 views
2

我正在與德爾福Rad Studio西雅圖10建設一個iOS應用程序。 此應用程序必須接收推送通知。這適用於我,但是當應用程序正在運行時,它確實收到任何通知。我能做什麼錯了?德爾福蘋果推送通知,而應用程序正在運行

下面是代碼:

var 
    APushService: TPushService; 
    AServiceConnection: TPushServiceConnection; 
    ADeviceID, AdeviceToken: String; 

APushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS); 
AServiceConnection := TPushServiceConnection.Create(APushService); 
AServiceConnection.Active := True; 

ADeviceID := APushService.DeviceIDValue[TPushService.TDeviceIDNames.DeviceID]; 
AdeviceToken := APushService.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken]; 

有了這個代碼,應用程序接收推送通知,但不運行時。

+0

這不適用於德爾福10西雅圖。你能提供一個代碼示例嗎? – Machado

+0

你能幫我嗎? http://stackoverflow.com/questions/34087495/receiving-ios-push-notifications-on-delphi-10-seattle – Machado

回答

2

這是設計。當應用程序處於前臺時,推送通知將直接發送到應用程序。如果你想在這種情況下通知用戶,你必須在你的應用程序中處理。

只有當應用程序未在前臺運行時,該消息纔會通過警報或任何配置顯示給用戶。用戶可以通過點擊消息來啓動應用程序。

+0

非常感謝,我以爲我做錯了什麼... – elcharlie