问题标签 [background-fetch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 每小时检查一次论坛上的新帖子 Swift
我正在制作一个应用程序,用于检查论坛页面(如 reddit)上是否有新帖子和线程。当有新帖子时,应用程序会通过后台获取通知用户,但如果用户关闭应用程序,后台获取将不起作用。此外,该应用程序并不是每小时都更新一次,而可能只是每 5-10 小时更新一次。是否有另一种在后台更新的方式,比如发送远程通知,如果,如何?
ios - IOS Firebase 后台获取
根据教程-> https://www.raywenderlich.com/92428/background-modes-ios-swift-tutorial3 ,我在 swift 2.0 上使用后台获取时遇到问题。我收到此错误: application:performFetchWithCompletionHandler: 但从未调用过完成处理程序。
基本上我有一个功能,我可以在其中执行我的操作(在 firebase 上调用数据),我希望它在后台执行。
这是我的应用委托代码
这是我在接口函数上从firebase获取数据的方式:
Xcode 错误:
警告:应用程序委托收到了对 -application:performFetchWithCompletionHandler: 的调用,但从未调用过完成处理程序。
提前致谢。
ios - iOS后台获取在模拟器上工作但不是在物理设备上
好的,所以我已经成功实现了后台提取。那里没有问题。我遇到的问题是后台获取在模拟器和设备上的工作方式不同。
}
现在后台提取的输出很好,即
2016-04-20 18:47:12 +0000 在逻辑错误状态后计数 19,检查服务器日志
但是当我在 iphone 5(实际)设备上运行相同的东西时,它只打印
2016-04-20 18:47:12 +0000
之后什么都没有
2016-04-20 18:49:12 +0000
之后
使用调试器运行或中断
- 它不能是后台获取 30 秒的限制(我认为)。虽然响应很大,但目前我只调用一个请求。
- 错误的代码.. 嗯.. 在模拟器中完美运行。
ps响应数据比较大的json
所以问题是我错过了什么?以及为什么不调用 SyncServiceDataSource.dbOperations
swift - 应用程序在后台获取的 Collectionview 的 reloadData() 处崩溃
所以我正在做一个后台获取,并且在我想更新 UI 之后。后台获取本身(数据库)有效,但是当我想更新 UI 时,我遇到了崩溃unexpectedly found nil while unwrapping an Optional value
根据我的 xCodeself.newestPublicationsCollectionView.reloadData()
是在 updateCollections() 函数中发生崩溃的地方。
AppDelegate 中的其他代码:
我的 PublicationOverviewController 中的 .fetch
我认为崩溃是因为我需要主线程上的 UI,但这并没有帮助。任何输入都会很好。
细节:
在我的 PublicationFetcher.shared.fetchAllPublications() 中,我执行以下操作:
- 从后端获取数据
dispatch_async(dispatch_get_main_queue()) { () -> Void in NSNotificationCenter.defaultCenter().postNotificationName("RELOAD_NOTIFICATION", object: nil) }
在那个重新加载通知下我做了一个updateCollections()
斯威夫特 3:
ios - 即使应用程序终止,如何在 Swift 中每小时在后台获取数据?
我正在制作一个提供每小时获取数据功能的应用程序。即使应用程序终止,它也会获取数据。我怎样才能实现这个功能?
经过大量搜索后,我发现使用 performFetchWithCompletionHandler 进行后台获取。即使我的应用程序终止,此功能也会起作用吗?我的意思是如果我的应用程序处于关闭或终止状态,我可以自动调用这个函数吗?
ios - 后台获取和本地通知
在我的应用程序中,我打算使用本地通知而不是推送通知。我需要检查交易更新是否可用,如果是,只需使用本地通知通知用户。我已经完成了以下步骤。
- 在
didFinishLaunchingWithOptions
中,设置获取间隔[[UIApplication sharedApplication]setMinimumBackgroundFetchInterval:UIApplicationBackgroundFetchIntervalMinimum]
。 -(void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
> 为 POST 请求添加了如下代码以及我的请求数据:
响应解析后,比较是否有任何更新以及是否有任何更新,使用以下代码显示通知。
/li>
问题是大多数时候,当手机被锁定时,收到错误消息 >Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost."
因此没有显示通知。但是当我将电话直接连接到电话并在调试模式下启用后台同步时,一切正常。
请指导我一个简单的方法来做到这一点,或者如果我做错了什么,请纠正我。
谢谢,
移动开发者。
ios - iOS后台应用程序获取不起作用
所以,我想使用带有位置的 API 检查一些东西并发送一个UILocalNotification
. 这就是我从另一个类获取 AppDelegate 中的位置的方式:
在 AppDelegate 我有这个:
类 AppDelegate:UIResponder,UIApplicationDelegate,CLLocationManagerDelegate {
....
我的问题是我的分析一直说应用程序在performFetchWithCompletionHandler
. 我在实际设备上执行 Debug->Stimulate Background Fetch 并且工作得很好。我不知道为什么分析说应用程序在用户身上崩溃。
这是崩溃的分析链接:http: //crashes.to/s/86193953c05
ios - 即使应用程序在后台,backgroundTimeRemaining 也会非常高
我正在尝试在应用程序状态为后台时打印后台剩余时间。我正在尝试读取后台剩余时间以在触发后台获取时执行某些任务。
这是我的代码:-
UIApplicationState appState = [[UIApplication sharedApplication] applicationState];
NSString *appStateString;
当我打印 appStateString 的值时,我看到:-
background 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.00 seconds remaining
根据 Apple 的文档,它说“当应用程序在前台运行时,此属性中的值仍然适当大”
但在我的情况下,应用程序在后台运行。那么为什么这个值会这么大呢?请建议
ios - 将特定的 NSTimeInterval 传递给 setMinimumBackgroundFetchInterval 是一种好习惯吗?
我有义务通过UIApplicationBackgroundFetchIntervalMinimum
或者UIApplicationBackgroundFetchIntervalNever
?
或者是否可以改为传递自定义间隔,例如 10 分钟:
UIApplication.sharedApplication().setMinimumBackgroundFetchInterval(600.0)
在我的应用程序中,我必须在应用程序处于后台时下载一些新的更新数据。
然后我将使用新数据向用户发送本地通知。
swift - 执行后台获取时如何正确使用completionHandler?
我很难completionHandler
在performFetchWithCompletionHandler
.AppDelegate
我的应用程序进行了一些后台提取,并且在提取期间我想调用位于我的一个 viewControllers 中的函数
使用 的正确方法是什么completionHandler
,我知道它是一个异步任务。
当我想将数据发送到我的数据库时,我设法让它工作,但是当我想调用位于其中一个 viewControllers 中的函数时,我无法让它工作
尝试:正确的调用方式是completionHandler
什么?
PS:这是成功的尝试,这是我将数据发送到我的数据库时: