我看到很多关于活动生命周期的答案,而且大多数情况下我都很清楚。我正在寻找的是应用程序生命周期。我有以下情况:
使用活动生命周期,即使不是不可能,也很难实现。有什么建议吗?
答案 0 :(得分:1)
受到解决方案的启发,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;
}
答案 1 :(得分:0)
当您的应用程序背景化(不再可见)时,调用的方法为onStop()
,当应用程序被预设时,将调用onStart()
然后onResume()
({{1}也可以被调用。)
问题是,您应该做的是onCreate()
中的PIN无效,然后在onStop()
中询问PIN码。这将始终使您的应用程序要求输入PIN:第一次启动应用程序以及应用程序何时进行后台处理。
答案 2 :(得分:0)
申请开始 - onCreate()
/ onStart()
获取onCreate
或onStart
或onResume()
中的图钉(检查图钉的状态。
3.应用程序背景 - onPause()
- 在onPause()方法上使您的引脚无效
4.应用是前瞻性的 - onResume()
- 在onResume()中执行第2步