java - 如何阻止应用程序/服务被破坏?

标签 java android service android-activity ondestroy

我有一个应用程序,它有一个屏幕,带有“开始日志记录”按钮,用于启动服务。按下后,该按钮将变为“停止日志记录”按钮并停止 onClick 服务。该服务本质上每分钟抓取一些数据并将其写入几个 SQLite 表中。

该应用程序设计为打开、开始记录..然后最小化并留在后台运行。然而,问题是,在一段时间后,Android会销毁/停止进程/服务/Activity ,以便不再记录数据,并且当应用程序重新打开时,屏幕会重置,以便再次显示“开始记录”而不是“停止日志记录”,因为应用程序已重新启动。

我正在寻找能够在后台运行并收集数据的应用程序/服务,只要它想要,并且 Activity 保持打开状态或处于打开时我可以停止的状态记录而不是重置屏幕。基本上,应用程序在记录时会永远最小化并且不会关闭。

感谢您的帮助或建议。

最佳答案

您应该实现 Foreground。

要请求您的服务在前台运行,请调用 startForeground()。该方法采用两个参数:唯一标识通知的整数和状态栏的通知。欲了解更多信息,请访问:

http://developer.android.com/guide/components/services.html#Foreground

关于java - 如何阻止应用程序/服务被破坏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14690857/

相关文章:

java - 泛型、 super 和扩展的问题

java - Android Studio - 只有一个 fragment/没有标题的设置 Activity

java - 如何在保留参数的同时覆盖spring bean?

javascript - 电话间隙 : manipulate files system

android - 重启后短信广播接收器不工作

java - 将字符串数组转换为整数数组

android - 电话管理器 gsm 参数

android - 资源中不存在动画资源类型

android - BroadcastReceiver 在两个服务之间不起作用

php - 无法启动/重启 PHP 7.2 FPM 服务(CentOS 7、Apache)