- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个应用程序由于播放音乐而在后台保持清醒状态;但是,在极少数情况下,如果由于连接问题或用户将音乐静音,音乐在歌曲之间停止的时间比预期的长(可能是相对较短的时间),应用程序将暂停。我知道 UIApplicationExitOnSuspend
但与它的描述不同,这实际上在进入后台时退出。我做了很多研究,我知道没有进入暂停状态的系统通知。
有没有办法在离开暂停状态时识别应用程序已暂停?或者,是否有任何类似于 UIApplicationExitOnSuspend
的操作,除了仅当应用程序实际暂停时,而不仅仅是当它进入后台时?
最佳答案
您可以尝试在 UIApplication 上使用 backgroundtimeremaining
属性,在某个时间间隔用计时器轮询它,如果该值足够接近零 - 设置一个标志,甚至在 userDefaults 中设置一个值,回到前台后您可以检查并取消设置?
此属性包含应用程序在被系统强制终止之前必须在后台运行的时间量。当应用程序在前台运行时,此属性中的值保持适当大。如果应用程序使用 beginBackgroundTask(expirationHandler:) 方法启动一个或多个长时间运行的任务,然后转换到后台,则调整此属性的值以反射(reflect)应用程序剩余的运行时间。
关于ios - UIApplicationExitOnSuspend 用于挂起而不是后台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44205658/
我有一个应用程序由于播放音乐而在后台保持清醒状态;但是,在极少数情况下,如果由于连接问题或用户将音乐静音,音乐在歌曲之间停止的时间比预期的长(可能是相对较短的时间),应用程序将暂停。我知道 UIApp
我是一名优秀的程序员,十分优秀!