我需要在我的应用进入后台 5 分钟时创建一个超时功能(任何触发 onPause() 的事件, Activity 结束时除外)。如果用户返回应用程序,则应取消计时器。
此外,我需要定时器不依赖于手机中设置的时间,这意味着当应用程序进入后台然后用户更改时间时应用程序仍将在 5 分钟内超时。
查看 AlarmManager 的文档,它声明如下:
Note: The Alarm Manager is intended for cases where you want to have your application code
run at a specific time, even if your application is not currently running. For normal
timing operations (ticks, timeouts, etc) it is easier and much more efficient to use
Handler.
最佳答案
或者,您可以尝试设置 bound service - 即使用户切换最前面的应用程序,这些也可以在后台运行。您可以使用 Handler 与服务通信,就像您处理线程一样。
最简单的方法是使用预定义类型的 sendEmptyMessageDelayed,并在您的应用重新启动后调用 removeMessages()。
关于android - 当应用程序进入后台时需要实现超时功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13230239/