如何解决在系统杀死Android应用程序之前,该应用程序可以在后台运行多长时间关闭了电池优化功能?
我正在构建一个Android应用,该应用需要与外围设备保持持续的蓝牙(经典)通信。只要应用程序在前台运行,一切都很好。但是,当应用程序置于后台时,系统会在不确定的时间后杀死该应用程序。该应用可以在2到15分钟内挂在任何地方。即使该应用没有进行电池优化,也会发生这种情况。我希望通过关闭电池优化功能,可以防止Android将应用置于待机模式/杀死它。
如果该应用在电池上运行时无法永远运行,那么该应用在后台可以运行多长时间?
我希望应用程序在后台的存在时间是可以确定的!感谢您对此事的帮助。
在运行Android 8.1.0的Motorola G5S Plus上进行了测试
清单文件的“ background_running”已打开:
<Meta-data android:name="android.app.background_running" android:value="true"/>
应用程序的目标SDK为API 29:Android 10
解决方法
您需要使用WakeLock / Foreground Service来实现后台服务,在服务中,您需要编写要在后台运行的所有蓝牙代码,在服务中的活动/片段中编写的代码,需要实现蓝牙回调广播接收器。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。