【问题标题】:Receive Push Notification in background and create a local Notification without the user knowledge在后台接收推送通知并在用户不知情的情况下创建本地通知
【发布时间】:2013-04-09 13:52:02
【问题描述】:

我正在接收远程推送通知,我需要在 30 分钟内注册一个 UILocalNotification,但即使用户没有在后台点击通知,我也需要这样做。

有任何方法可以做到这一点,例如:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{

}

这里可以正常工作,但前提是用户点击通知,或者应用程序当前正在运行。

【问题讨论】:

  • 为什么不在 30 分钟后发送另一个推送通知?
  • 因为我需要在用户收到通知后开始计数,所以他有30分钟的时间来回答请求@AttilaH

标签: ios objective-c background push-notification apple-push-notifications


【解决方案1】:

如果应用程序没有运行,直到用户没有启动您的应用程序,您就无法处理远程通知。您应该处理服务器端的业务逻辑。跟踪通知的发送时间,并在超出时间范围后触发相应的操作。

【讨论】:

    【解决方案2】:

    您需要在项目设置的“功能”部分中打开“后台获取”,并在您的ApplicationDelegate 文件中使用application:didReceiveRemoteNotification:fetchCompletionHandler 委托方法。这样您就可以在后台处理远程通知。发送推送时不要忘记在 aps 字典中设置 content-available 标志。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-03
      相关资源
      最近更新 更多