- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
问题
发送发布应用程序版本的静默通知显示下一个日志: SpringBoard[48] <Warning>: High Priority Push: [Bundle ID] - BAR Disabled
有什么想法吗?酒吧禁用?看起来当“BAR Disabled”日志出现时,方法 (didReceiveRemoteNotification - fetchCompletionHandler) 没有被调用。
更多信息
通知
{"aps":{"alert":"Test","sound":"default","content-available":1}, "data" : 345}
结果
显示带有文本“Test”的通知并播放默认声音但未调用 fetchCompletionHandler,只是一个日志: SpringBoard[48] <Warning>: High Priority Push: [Bundle ID] - BAR Disabled
最佳答案
BAR Disabled 表示未启用后台应用刷新,因此应用无法执行 fetchCompletionHandler。
从设备转到“设置”>“通用”>“后台应用刷新”并打开“后台应用刷新”。如果您从应用程序切换器中退出某个应用程序,它可能无法运行或在您再次打开之前无法检查新内容。
有关后台应用刷新 (BAR) 的更多信息:
这是 10 分钟宽限期之外的另一回事。允许启用 BAR 的应用程序不时唤醒,直到它从应用程序切换器退出或手机重新启动/重新启动。这里没有 10 分钟的限制,重要的是要了解 BAR 不同于背景知识。 “醒来”是指“睁开睡眼并下载一些东西,然后直接回到 sleep 状态”。如果您从应用程序切换器中终止该应用程序,其 BAR 权限也会消失。
支持 BAR 的应用程序通常会安排在适当的时候唤醒以进行 self 更新。这些时刻包括:
来自 Apple 本身:iOS 根据您对设备的使用情况学习模式,并尝试预测应用何时应在后台进行 BAR 更新。它还了解设备通常何时处于非事件状态,例如在夜间,以在设备未使用时降低更新频率。
感谢/u/Niruga 分享的信息,还有所谓的“静默”推送通知,应用程序可以利用它来唤醒应用程序以进行 BAR 更新。用户看不到静默推送通知。
例如,Dropbox 使用 BAR 和位置来保持其照片上传工作超过 10 分钟,直到完成上传为止。它不会不断上传,因为那不是 BAR 所做的。所以在 Dropbox 中发生的事情是它使用位置更改来唤醒应用程序并上传 10 分钟,然后再回到 sleep 状态,然后等待下一次位置更改以使应用程序再次唤醒并从中断的地方继续, 并重复直到所有上传完成,所有这些都不需要用户在前台保持应用程序打开。
要决定是否启用 BAR,请考虑您是否相信应用开发者不会滥用该功能。
希望对您有所帮助。
引用:https://www.reddit.com/r/jailbreak/comments/3eao32/discussion_write_up_ios_backgrounding_and/
关于ios - 跳板[48] <警告> : High Priority Push: [Bundle ID] - BAR Disabled,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36567963/
我使用 Nativescript,我的应用程序因以下问题多次被 Apple 拒绝。有人可以帮帮我吗。 Your app uses or references the following non-pub
问题 发送发布应用程序版本的静默通知显示下一个日志: SpringBoard[48] : High Priority Push: [Bundle ID] - BAR Disabled 有什么想法吗?酒
我是一名优秀的程序员,十分优秀!