Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.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_Android Service - Fatal编程技术网

Android 创建一个倒计时计时器,使活动/片段存活

Android 创建一个倒计时计时器,使活动/片段存活,android,android-service,Android,Android Service,我需要实现一种“超时”机制 如果要求给定一个时间(以毫秒为单位),则启动一个倒计时计时器,从给定的时间开始倒计时 当时间为零时,必须触发一个操作(如显示对话框) 此计时器不得受活动或片段限制,但应在用户触摸屏幕时重置为给定时间 我正在考虑两种方法来实现这一点: 1) 在应用程序类内创建倒计时计时器,使其不受任何活动或片段的限制。applicationclass通过LiveData公开结果 2) 创建一个绑定服务类,其中包含倒计时计时器,并通过broadcastReceiver公开结果 我只想知道

我需要实现一种“超时”机制

如果要求给定一个时间(以毫秒为单位),则启动一个倒计时计时器,从给定的时间开始倒计时

当时间为零时,必须触发一个操作(如显示对话框)

此计时器不得受活动或片段限制,但应在用户触摸屏幕时重置为给定时间

我正在考虑两种方法来实现这一点:

1) 在应用程序类内创建倒计时计时器,使其不受任何活动或片段的限制。
application
class通过
LiveData
公开结果

2) 创建一个绑定服务类,其中包含倒计时计时器,并通过
broadcastReceiver
公开结果

我只想知道哪种方法是最好的?或者有更好的方法吗?我听说过
JobScheduler
这项工作是不是在考虑这个用例


提前感谢。

您可以创建一个普通的线程对象,并在其“run()”方法中执行“while(System.currentmissions()该代码存放在何处?您是将其放在应用程序类还是服务中?哪一个更好?似乎你只需要一个简单的计时器,这样你就可以在任何地方创建那几行代码。我建议您在服务类内创建新类(扩展“Thread”),然后执行“newnewthreadclass().start()”