我正在使用Swift 3为iOS 10开发,我想让应用程序在后台悄悄地从远程服务器获取数据,并在新数据可用时向用户发送推送通知。我知道远程通知可能是处理此问题的更好方法,但是否有一种在本地实现此功能的方法?我知道我可以在特定时间或当用户进入特定位置时推送通知,但是是否有一种方法可以以编程方式触发通知?
发布于 2017-08-15 09:32:51
当数据到达时,您可以发送"UILocalNotification“通知。(推送通知涉及服务器、证书.等等)
我建议:
( a)使用performFetchWithCompletionHandler
根据ADC:
“当一个好机会出现时,系统会将您的应用程序唤醒或启动到后台,并调用应用程序委托的application:performFetchWithCompletionHandler:方法。使用该方法检查新内容,并在内容可用时启动下载操作。”
( b)在performFetchWithCompletionHandler中触发下载。将completionHandler传递给将使用NSURL会话的代码。
( c)下载完成后,触发本地通知,并执行completionHandler iOS在“performFetchWithCompletionHandler”中发送给您的
和往常一样,你有严格的时间限制。
的另一种方式(可能更简单.)正在使用后台backgroundSessionConfiguration/downloadTask。
在回叫中,只需发送本地通知即可。
https://stackoverflow.com/questions/45689407
复制相似问题