2

我正在使用 Delphi Rad Studio Seattle 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];

使用此代码,应用程序会收到推送通知,但在运行时不会。

4

1 回答 1

2

这是设计使然。当应用程序在前台时,推送通知会直接发送到应用程序。如果您希望在这种情况下通知用户,您必须在您的应用程序中处理此问题。

只有当应用程序不在前台运行时,才会通过警报或任何配置向用户显示消息。然后,用户可以通过点击消息来启动应用程序。

于 2015-11-06T15:52:00.553 回答