iOS Beacon 随时需要

标签 ios apple-push-notifications core-location ibeacon core-bluetooth

正如 Apple 文档中明确指出的那样,信标测距只能在后台短时间完成,例如默认情况下最多 10 秒或在后台任务到期处理程序的帮助下最多 3 分钟。根据我的应用程序的用例,应用程序需要每 15 分钟进行一次信标测距,直到用户离开该区域。我正在考虑为此目的使用后台推送通知(静默推送通知)(假设数据连接在设备上始终可用)。所以流程是这样的,当用户进入该区域时,应用程序使用设备 token 调用服务器,服务器每 15 分钟发送一次静默推送通知。一旦应用程序收到推送通知,它会在允许的时间段内根据需要进行信标测距。我在这里的问题是在后台模式下使用推送通知进行测距是否合法,我在应用商店提交期间会遇到任何问题。

注意:我还需要为应用程序启用 BLE 后台模式,以读取某些 BLE 设备的一些特征。

最佳答案

从技术上讲,您可以做到,但 Apple 大多拒绝此类应用。您必须考虑的一件重要事情是,如果应用程序被用户手动终止并且不在后台运行,那么应用程序将不会通过静默推送通知唤醒。如果您有 VoIP 推送通知,则有一个解决方法,它甚至会从终止状态唤醒应用程序。但在将其推送到 AppStore 时,您可能需要强有力的理由。

关于iOS Beacon 随时需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47281825/

相关文章:

ios - 无法以美元添加应用内购买价格,在瑞士获得选项,而开发者帐户是德国的

ios - 如何从 iOS 中的字典中获取值

ios - ios 中的推送通知 - 角标(Badge)和横幅显示不同的请求

iphone - 使用 startMonitoringForRegion :region desiredAccuracy:accuracy? 可以监视的最大区域数是多少

iOS:用模拟器进行区域监控还有很长的路要走

ios - FBSDKLikeControl 变灰/禁用

ios - buildMenu 在 AppDelegate 中调用,但在 UIViewController 中不调用

c# - PushSharp Apple 通知从版本 4.0.10.0 到 Testflight 的问题

android - GCM for iOS 和 Apple 提供的推送通知服务有什么区别

core-location - iOS8位置: How should one request Always Authorization after user has granted "When In Use" Authorization?