2011-10-12 111 views
1

我想,我有一个通用的逻辑问题。如果没有活动,我想在15之后注销用户。我如何在android中找到任何“活动”。我应该如何去了解它...Android活动管理器

专家请帮助...

回答

2

您需要花一点时间仔细考虑您的需求,但根据我所知道的情况,您想跟踪用户交互情况,并且如果自上次交互之后时间限制过期,请执行一些操作行动,在你的情况下将它们从应用程序中注销。

首先,你需要一些地方,当最后的互动发生,你可以跟踪,因为你希望这是应用广泛,你可以使用singleton持有本,或override the Application类,无论哪种方式应该做的。

接下来,您需要开始跟踪用户交互。从您的活动中,您可以覆盖onUserInteraction方法,只要用户与应用程序(如键盘事件)交互,就会调用该方法。每次你点击这个方法,更新你的单身人士,让它知道发生了什么,并带有时间戳。

最后,您需要一些循环检查以不断检查最近是否发生了任何事情。那里有各种各样是这样做的,你可以有一个连续的循环,当前时间戳到最后记录的事件相比,有点守则草案:

while(true) 
{ 
    if (timeLastEventRecorded < (now - 15)) 
    { 
     //nothing has happened in 15 minutes, so take corrective action 
    } 
} 

想必你已经在你的应用程序的一些代码,需要照顾的注销,例如当用户点击“注销”时,您应该可以在上面的示例中调用该注销。

希望这会有所帮助

+0

谢谢。我想这已经让我走上了正轨。 – user533844

1

你应该有所有活动从覆盖onUserInteraction()父活动继承。在该回调中,您应该重置一个静态应用程序宽度计时器,该计时器在时间到达结束时执行您的注销代码。

+0

听起来正是我想要的。你有任何例子.... – user533844