如果应用暂停超过 5 分钟,请执行操作

Do action if app paused for more than 5 minutes

我有一个 android 应用程序,我希望能够将其设置为如果应用程序最小化时间少于 5 分钟,它将正常恢复,但如果超过 5 分钟,它将重新启动,例如银行应用程序有效。

我找不到任何可以实现的东西,有人可以提供一些关于我应该在哪里获得此功能的指示。

谢谢。

有几种实现方式。

  1. 例如,您可以使用AlarmManager随时执行代码。 https://developer.android.com/reference/android/app/AlarmManager.html

  2. 您可以使用 Service class 在后台模式下使用您的应用程序。在这种情况下必须使用 StartForegroundhttps://developer.android.com/training/run-background-service/create-service.html

  3. 如果您使用客户端-服务器 (GCM),则可以使用远程消息。 https://developers.google.com/cloud-messaging/

我认为在您的应用暂停时保存时间戳并在恢复时检查它会更容易

银行应用程序不存储任何重定向凭据,因此它每次都从头开始。但是如果你需要5分钟的间隔,那么你可以按照rkmax给出的答案。

在您的 main activity 中,将 currenttimemillis 存储在 shared preferences 中的 on pause 方法中。并在 on resume 中减去新的 currenttimemillis 和您存储的内容。将毫秒转换为分钟并根据您的逻辑重定向或执行 activity。