我看到很多关于 Activity Lifecycle 的答案,其中大部分对我来说都很清楚。我正在寻找的是应用程序生命周期。我有以下情况:
- 应用程序开始 - 使 PIN 无效
- 如果 PIN 已过时或无效,则必须输入 PIN
- 应用程序处于后台(Android 主屏幕可见)- 使 PIN 无效
- 应用程序在前台(应用程序再次可见)- 转到第 2 步
有了 Activity 生命周期,即使不是不可能,也很难实现。有什么建议吗?
最佳答案
受到 Doomsknight 向我指出的解决方案的启发,我构建了这个没有 Timer 的解决方案,如建议的答案中所建议的那样。这是我的 mainapplication.cs 中的代码:
public void OnActivityPaused(Activity activity)
{
_lastActivity = DateTime.Now;
}
public void OnActivityResumed(Activity activity)
{
CrossCurrentActivity.Current.Activity = activity;
DateTime now = DateTime.Now;
TimeSpan span = now - _lastActivity;
if (span.TotalMilliseconds > 2000)
{
Notifier.Classes.Settings.IsPinValid = false;
}
_lastActivity = now;
}
关于安卓应用生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44387737/