问题标签 [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.

0 投票
2 回答
3004 浏览

ios - Can i use startupdatinglocation in background?

I need to know if I am near to a saved Geo-location in my app within a range starting at 10 Meters to 500 Meters in background. I have used startMonitoringForSignificantLocationChange but I am not getting accurate results. Instead using startupdatinglocation is giving results as accurate as 7 meters. I am planning to add a NSTimer to call startupdatinglocation every 1 minute.

Is there any other solutions?

0 投票
1 回答
680 浏览

ios - IOS远程静音通知在电话/网络波动期间不起作用

我正在开发我正在做后台工作的 iOS 应用程序。我通过发送静默通知来唤醒应用程序。代码大部分时间都运行良好。

问题是在通话期间应用程序未唤醒,即使在网络连接较低或网络波动期间应用程序未唤醒。

我正在做以下事情:

我的观察是:应用程序没有崩溃。即使在通话期间有通知(手机已连接 wifi),它也不会记录“后台通知”。

请让我知道如何获得准确性?

0 投票
0 回答
790 浏览

ios - 应用启动时的 iOS 后台获取导致黑屏

我已经成功地在我正在开发的 iOS 应用程序中使用后台获取,但我注意到一个奇怪的错误,我在压缩时遇到了问题。

最初的症状是有时当我启动应用程序时,启动图像会显示,然后被黑屏取代。如果我点击主页按钮然后重新打开应用程序,一切都会好起来的,应用程序将按预期运行。我还注意到,如果我有一段时间没有使用该应用程序,这似乎只会发生。在添加了一堆日志之后,我意识到只有当操作系统在启动时触发了后台获取时,才会在启动时出现黑屏。似乎如果有一段时间没有完成提取,然后您启动应用程序,iOS 将在您当前启动的应用程序上触发“后台”提取。该错误仅在这种情况下发生。

我做了一些谷歌搜索,似乎这种行为的一个原因可能是您在应用程序生命周期的错误点触发动画。我对我的应用程序进行了审核,但没有发现太多。我还发现这个Stack Overflow 帖子描述了一个类似的问题,除了我的应用程序没有崩溃,而且我没有在我的application:performFetchWithCompletionHandler:实现中对后台线程做任何事情。

我认为下一步将是提出一个仍然会导致问题的最小测试用例。因此,使用 Xcode 6.1,我创建了一个空白的单视图应用程序 (Swift)。然后我做了少量的工作来添加后台获取:

  • 在我的目标的 Capabilities 屏幕上的 Background Modes 部分添加了“Background fetch”。
  • 更新了 AppDelegate.swift 以包含相关的后台获取片段。

    /li>

我没有进行其他更改,然后在设备上启动了该应用程序。为了让这种情况发生,我从 Xcode 运行了一些 Simulate Background Fetch 命令,在 Xcode 中停止了应用程序,然后等待了一段时间(大约 10 分钟)。然后,我从 Xcode 重新启动了该应用程序,并体验了在我的实际应用程序中发生的相同行为。

在这一点上,我无法断定这是 SDK 中的某种错误。有没有其他人见过这种情况?有解决方法吗?

0 投票
1 回答
506 浏览

ios7 - ios 7 从 xmpp 服务器获取离线消息

我正在使用 XMPP 协议开发聊天应用程序。我的开发目标是 iOS 7.0 每个认为运行良好的用户只有在他们在线时才能进行交流。但是我想在用户离线时通知用户消息已经到来。

我已经尝试过iphone XMPP App run background 但它对我不起作用。

首先认为可能与否?使用什么VIOP,后台获取或其他方式?

如果是,请告诉我。如何?。

0 投票
1 回答
307 浏览

ios - iOS中的后台获取

来自 Android 开发,我们有运行良好的后台服务,这对我来说有点难以开始思考 Apple 的方式。我们在 Android 中实现的是,我们的后台服务会定期更新我们的数据库,如果它们在前台或用户启动应用程序时可以更新 UI。

iOS 中的情况看起来有点不同,因为没有什么类似于后台服务。这是我的问题

  • 即使我的应用程序被用户终止,我的后台提取是否有任何方式运行?我没有使用 HTTP 下载内容,所以我不确定后台传输服务 API 是否有帮助。
  • 是否有可能在不同的时间安排多个提取操作?

还是我必须完全重新考虑我的服务如何用于 iOS 开发?任何想法将不胜感激。

0 投票
2 回答
1394 浏览

ios - 后台提取不起作用

我在让后台提取工作时遇到问题。请参阅下面的代码。我在 info.plist 中添加了 fetch 作为后台模式。我使用 Debug -> Simulate background fetch 来模拟提取。控制台日志中没有任何输出。我在 swift 中找不到任何好的例子。有谁知道如何让这个工作?

0 投票
0 回答
94 浏览

ios - 如何在 iOS 7 之前定期刷新我的应用数据?

我的 iOS 应用程序需要定期从服务器刷新数据,即使用户没有启动应用程序也是如此。使用iOS7,我可以使用后台模式'fetch'来定期刷新数据;如何在 7 之前的 iOS 版本中执行此操作?

具体来说,我可以使用本地或远程通知来“唤醒”应用程序以运行代码片段,而无需实际向用户发送通知吗?

0 投票
2 回答
1437 浏览

ios - 当应用程序在前台时检测ios后台获取是否正在运行

我有一个后台获取来更新我的本地 sqlite 数据。

如果应用程序也在前台运行,我希望能够检测后台提取是否正在运行,以阻止 UI 尝试加载部分填充的 sql 行。

如何检测后台提取是否正在运行?

另外,有没有比告诉用户他们无法查看数据更好的 ui 模式?

0 投票
0 回答
1098 浏览

ios - ios 后台获取应用程序设置 - 从代码中的 info.plist 读取

在我的 iOS 应用程序中,我启用了自 iOS 7 以来可用的 Backgrdound Fetch 功能(项目 > 功能 > 背景模式 > 背景提取)。

最初,我定义了一个布尔设置(我称之为“启用后台获取”)以Root.plist允许应用启用/禁用此功能,但在重新编译和执行后,我注意到在应用设置屏幕中,一个名为“ “后台应用刷新”已自动添加到我的其他自定义设置之上。

我的问题是:我可以访问这个自动添加的属性的值,而不必定义我自己的重复设置键吗?我需要从我的应用程序代码中读取属性的值,因为我的应用程序行为的其他方面取决于是否启用了后台提取。

我可以调用NSUserDefaults.standardUserDefaults().boolForKey(...)吗?在这种情况下,我应该使用哪个键值?

0 投票
3 回答
2898 浏览

ios - iOS后台获取

我对后台获取有点困惑。我在 Apple Developer 文档中读到,当操作系统决定它应该获取时,用户无法控制后台获取,而在 Apple Developer 论坛上,Apple 员工的帖子说如果用户杀死应用程序(双击主页和按钮向上滑动)背景提取不会发生,在这种情况下用户可以控制后台提取。所以有人可以向我澄清一下,如果用户使用任务管理器杀死应用程序,后台获取仍然会在后台继续进行,或者它与应用程序同时被杀死。

苹果文档:

https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH4-SW1