如何在iphone中禁用重新登录

The*_*der 0 sqlite iphone

我开发了一个与登录帐户相关的应用程序,人们也可以在我的应用程序中注册,因为这些用户信息将存储在SQLite数据库中.

问题是,当用户退出帐户然后重新登录时,应用程序会要求用户再次登录.我不希望这种情况发生,因为它应该记住用户名和密码,并应自动登录.

有谁知道怎么做到这一点?

Eye*_*nts 5

在您的AppDelegate.m文件中,添加NSUserDefaults方法...

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{    
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];

    if ([standardUserDefaults valueForKey:@"dbID"]==nil) {          
        [standardUserDefaults setObject:@"1" forKey:@"dbID"];
        [standardUserDefaults synchronize];
    }

}
Run Code Online (Sandbox Code Playgroud)

并且你还有理智的用户名和密码保存NSUserDefaults.并且对于注销功能,将代码注销代码添加到要注销应用程序的位置...

-(IBAction)Logout :(id)sender {

    [[NSUserDefaults standardUserDefaults] setObject:@"" forKey:@"dbID"];   
    [NSUserDefaults resetStandardUserDefaults];
}
Run Code Online (Sandbox Code Playgroud)

在登录时检查是否dbID为null然后用户使用用户名和密码登录.如果dbID不是null登录旧的用户名和密码.

如果您退出而没有注销应用程序,则在NSUserDefaults中存储dbID为"1"并重定向视图控制器并在您的登录时间中保存用户名和密码...以便保存

[[NSUserDefaults standardUserDefaults] setValue:@"Your text field value" forKey:@"Username"];
[[NSUserDefaults standardUserDefaults] setValue:@"Your text field value" forKey:@"password"]; 
Run Code Online (Sandbox Code Playgroud)

阅读

NSString * _UserName = [[NSUserDefaults standardUserDefaults] stringForKey:@"Username"];
NSString * _password = [[NSUserDefaults standardUserDefaults] stringForKey:@"password"];
Run Code Online (Sandbox Code Playgroud)

用户名和密码保存NSUserDefaults表示您已在NSUserDefaults中存储用户名和密码.

如果您已通过按钮注销应用程序,则使NUll用户名和密码保存NSUserDefaults ..如

[[NSUserDefaults standardUserDefaults] setValue:@"" forKey:@"Username"];
    [[NSUserDefaults standardUserDefaults] setValue:@"" forKey:@"password"];
Run Code Online (Sandbox Code Playgroud)