2013-10-24 2 views
0

привет, я хочу сделать что-то вроде этого. У моего приложения есть процесс регистрации. Когда пользователь вводит свой номер телефона на странице регистрации и выбирает регистрацию, пользователь получает PIN-код в виде SMS-сообщения. Также пользователь перенаправляет на проверку PIN-кода ViewController.Как сохранить статус приложения в телефоне

Что я хочу сделать, так это сохранить текущий статус пользователя в приложении. Это означает, что если пользователь вводит номер телефона и после получения SMS без ввода PIN-кода, он может закрыть приложение. Поэтому в следующий раз, когда он откроет приложение, он должен загрузить Verification ViewController. Для этого мне нужно сохранить статус приложения в моем телефоне.

Как я могу хранить это. Могу ли я использовать KeychainItemWrapper для этого? Если это так, я могу сделать несколько KeychainItems, изменив имя идентификатора.

Пожалуйста, помогите мне.

Благодаря

+0

Будет ли хранить после приложения закрытия? – user2889249

ответ

0

NSUserDefaults это самый простой путь:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:firstName forKey:@"firstName"]; 

И получить:

 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    NSString *firstName = [defaults objectForKey:@"firstName"]; 

И да, он будет оставаться после приложение закрыто.

+0

Как сохранить один пользователь по умолчанию из всего приложения. Я хочу сказать, что хочу добавить несколько статусов на многих Viewcontrollers. В качестве примера в Verification viewcontroller я хочу сохранить статус в качестве подтверждения, в контроллере просмотра входа он должен быть обновлен, как и в журнале. – user2889249

+0

Просто используйте тот же ключ и измените его значение. –

+0

когда я поставил NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults]; Он не собирается создавать новый объект каждый раз? – user2889249

1

Вы можете использовать NSUserDefaults:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // ... 

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 

    NSString *registrationStatus; 
    if (![defaults [email protected]"registrationStatus"]) 
     registrationStatus = @"notRegistered"; 
    else 
     registrationStatus = [defaults [email protected]"registrationStatus"]; 


    if ([registrationStatus isEqualToString:@"notRegistered"]) { 
     // show registration form 

     // When sending the SMS, you store the current status in NSUserDefaults like this 
     // [defaults setObject:@"registeredButNotValidated" forKey:@"registrationStatus"]; 
     // [defaults synchronize]; 
    } else if ([registrationStatus isEqualToString:@"registeredButNotValidated"]) { 
     // show validation form 

     // When validated, you store the current status in NSUserDefaults like this 
     // [defaults setObject:@"registered" forKey:@"registrationStatus"]; 
     // [defaults synchronize]; 
    } else { 
     // registered 
    } 

    return YES; 
} 
Смежные вопросы