Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何仅在用户/手机处于活动状态时运行服务?_Android - Fatal编程技术网

Android 如何仅在用户/手机处于活动状态时运行服务?

Android 如何仅在用户/手机处于活动状态时运行服务?,android,Android,我只想在用户处于活动状态时运行服务,或者在手机处于活动状态时运行更一般的服务。不需要在屏幕关闭时运行服务。但一旦用户解锁他的手机,我希望该服务再次运行 我如何实现这种行为 我的实际任务是:捕获logcat。因此,我创建了一个服务,它生成一个线程,读取“logcat”进程的输出 当手机被锁定时,背景线程的具体行为如何?它没有任何唤醒锁或东西。当手机进入睡眠状态时,Android会暂停线程吗?还是该线程会阻止Android进入睡眠状态?手机唤醒后如何恢复 我还考虑通过“AlarmManager”注册

我只想在用户处于活动状态时运行
服务
,或者在手机处于活动状态时运行更一般的服务。不需要在屏幕关闭时运行服务。但一旦用户解锁他的手机,我希望该服务再次运行

我如何实现这种行为

我的实际任务是:捕获logcat。因此,我创建了一个
服务
,它生成一个线程,读取“logcat”进程的输出

当手机被锁定时,背景线程的具体行为如何?它没有任何唤醒锁或东西。当手机进入睡眠状态时,Android会暂停线程吗?还是该线程会阻止Android进入睡眠状态?手机唤醒后如何恢复


我还考虑通过“AlarmManager”注册一个警报,它每15分钟触发一次并解析logcat。但使用这种方法,我可能会错过一些logcat线路。

用于重新启动服务。:您可以注册一个接收器,用于设备唤醒后(例如,当键盘关闭时),当用户在场时(当手机处于活动状态),系统会发送此意图。或者当手机屏幕打开时


用于停止服务:使用
动作屏幕关闭
意图当用户不在场或移动屏幕关闭时设备发送的此意图

用于重新启动服务:您可以为
动作用户在场
动作屏幕打开
注册接收器:当用户在设备唤醒后(例如,当键盘保护装置不在时),手机处于活动状态时显示。或者当手机屏幕打开时

停止服务:使用
操作屏幕关闭
意图当用户不在场或移动屏幕关闭时,设备发送此意图