Autologout iPhone应用程序

4

我希望制作一个iPhone应用,一旦应用在前台或后台处于空闲状态超过指定时间,就会使用户退出会话。我猜应该使用NSTimer,但不知道从哪里开始。当应用在前台时,如何判断用户是否处于空闲状态?我猜这应该是一个UIApplicationDelegate方法吗?

有什么建议吗?谢谢。

1个回答

2
如果您想在应用程序进入后台时自动注销,请查看应用程序委托方法。例如,有一个“applicationDidEnterBackground”方法,而“applicationWillTerminate”也可能有所帮助。这是您可以实现自动注销的地方。如果您想在应用程序在后台运行一定时间后注销,则需要启用应用程序在后台运行。要做到这一点,只需转到应用程序信息.plist文件并添加一个新字段“应用程序不在后台运行”。确保它未选中。然后在“applicationDidEnterBackground”方法中添加一个NSTimer,在一定时间后您可以注销。

谢谢。这对于后台注销非常有帮助。您有没有想法,如何使应用程序在前台闲置一段时间后注销。比如说,用户15分钟没有触摸屏幕(即将iPhone放置在一旁)... - Cyrus
1
嗯...关于那个问题我不太确定...看看这个问题,或许能帮到你: https://dev59.com/_nVC5IYBdhLWcg3wfxQ8 - futurevilla216
2
@lenny-k 在iOS上的后台处理仅限于极少数选择任务(例如VOIP或流媒体)。您不能在被置于后台之前设置NSTimer...更可行的策略是查看应用程序在后台运行的时间(在前台运行时),如果大于某个时间,则执行注销操作。关于后台计时器的讨论:http://www.iphonedevsdk.com/forum/iphone-sdk-development/58643-keep-nstimer-running-when-app-background-multitasking.html - occulus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接