代码之家  ›  专栏  ›  技术社区  ›  imObjCSwifting

iOS7应用程序轮询服务器本地通知,用于后台运行的新数据

  •  1
  • imObjCSwifting  · 技术社区  · 11 年前

    我只是想知道是否使用 Local Notification 对于我的应用程序,而不是 Push Notification .

    我的应用程序通过服务器的API从服务器获取数据。这是一个足球运动员的小型社交网络。我希望应用程序在用户的朋友在用户所在城市发布一个小游戏时通知用户。

    该应用程序是否可以运行后台进程,以在城市中轮询服务器是否有新的拾取游戏?例如,每10-15分钟,当有新的接收游戏时,它会向设备发送通知?

    2 回复  |  直到 11 年前
        1
  •  8
  •   Mike    11 年前

    您要做的是实现iOS7后台多任务API并执行 后台提取 。这里是体面的教程: http://hayageek.com/ios-background-fetch/

    您无法控制操作系统何时允许您在后台唤醒以执行提取,但在此操作期间,您可以轮询服务器,如果存在新数据,则使用它显示本地通知。

        2
  •  1
  •   Dima    11 年前

    按照你的想法是不可能的。当触发本地通知时,除非(或直到)应用程序实际处于活动状态,否则无法执行任何自定义代码。如果用户确实点击了通知中心中的通知,您可以从应用程序代理中的启动选项中获取通知信息 application:didFinishLaunchingWithOptions: 如果您的应用正在启动或从 application:didReceiveLocalNotification: 如果你的应用程序已经在运行但在后台运行。

    如果你只在应用程序实际处于前台时才可以使用,那么你可以设置任何你想要的计时器或通知。