Я хочу реализовать логику выхода в моем обычном приложении instagram. Для этого я использую библиотеку SimpleAuth. В первый раз, когда пользователь запускает приложение, все в порядке. Существует код в viewDidLoad:SimpleAuth не показывает экран входа в Instagram
-(void)viewDidLoad{
.. some code for interface management
[SimpleAuth authorize:@"instagram" options:@{@"scope":@[@"likes"]} completion:^(NSDictionary* responseObject, NSError *error) {
self.accessToken = responseObject[@"credentials"][@"token"];
[userDefaults setObject:self.accessToken forKey:@"accessToken"];
[userDefaults synchronize];
NSLog(@"access token is afterProceed %@", self.accessToken);
[self refresh];
}];
} else {
[self refresh];
}
Fine, для выхода из системы логики я сделал простой метод:
-(void)logoutButtonClicked{
//Deleting token
self.accessToken = nil;
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:nil forKey:@"accessToken"];
[userDefaults synchronize];
}
После этого access.token
предположим, равной нулю, и это nil
.
Однако, когда я заново запускаю приложение (с токеном доступа, установленным на нуль), он просто загружается снова, и когда я смотрю NSLog(@"access token is afterProceed %@", self.accessToken);
, появляется токен доступа (он не вводился во второй раз).
Почему это происходит? Как реализовать логику выхода в приложение?