我们可以锁定应用程序,而应用程序进入睡眠模式的IPhone?(Can we lock the app

2019-08-08 15:54发布

我工作的地方锁定选项是included.My应用程序与密码screen.If开始我输入正确的密码然后导航到下一screen.If我不使用很长一段时间的应用程序进入休眠状态mode.When用户希望的应用现在运行应用程序,密码屏幕应该出现,用户必须输入代码again.Is这可能吗?是否有任何教程吗?请不介意张贴相关的代码,如果你已经提前完成it.Thanks。

Answer 1:

是ofcourse这是可能的。 你必须在调用的方法打开屏幕applicationDidBecomeActive在你的应用程序委托。 这种方法被称为每一个应用程序从后台打开的时间。

所以每当用户启动已经在运行的应用程序,这种方法将被调用,这个,你可以先显示密码屏幕,之后相应的屏幕。



Answer 2:

当你的应用去使用背景您可以检测UIApplicationDidEnterBackgroundNotification 。 当它,记录日期和时间。 当用户打开应用程序的备份,您将收到UIApplicationWillEnterForegroundNotification 。 当您收到,比较录制日期和时间与当前的日期和时间。 如果这是太旧,显示密码屏幕。



Answer 3:

您在应用程序委托类有方法applicationDidEnterForegroundapplicationDidEnterBackground都可以做你的编码有



Answer 4:

我已经开发同类型的应用程序,在那里我已经实现了这个事情,为此,我做了一类这样的

@interface CommonUIClass:NSObject

+(void)setCurrentViewController:(id)controller;

+(void)openPassWordProtectedScreen;

@end

@implementation CommonUIClass

static id currentViewControllerObj;

+(void)setCurrentViewController:(id)controller{ 

  currentViewControllerObj = controller;

}

+(void)openPassWordProtectedScreen{

PROTECTED_CONTROLLER *view = [[PROTECTED_CONTROLLER alloc]init];



if ([currentViewControllerObj respondsToSelector:@selector(presentModalViewController:animated:)]) {
        [currentViewControllerObj presentModalViewController:patternLock animated:NO];
}

}


@end

只需导入这个类的每个视图控制器,并把这个代码

-(void)viewWillApear{

[CommonUIClass setCurrentViewController:self];
[super viewWillApear];
}

而当应用程序就会在后台

-(void)applicationWillResignActive:(UIApplication *)application{

[CommonUIClass openPassWordProtectedScreen];

}

谢谢..



文章来源: Can we lock the app while app goes to sleep mode in IPhone?