2

У меня есть Facebook iOS SDK, настроенный в моем приложении. Тем не менее, мне трудно определить, когда мой сеанс закончен. Как проверить, закончен ли он и где (как) хранить токен доступа, полученный при входе в систему?Хранение accessToken в Facebook iOS SDK

Мне нужно определить, есть ли у меня токен доступа или нет с самого начала, поэтому я знаю, нужно ли снова входить в систему или идти вперед в приложении.

ответ

7

Вы знакомы с NSUserDefaults? Он предназначен для сохранения предпочтений для вашего приложения.

Они чрезвычайно просты в использовании и, вероятно, то, что вы ищете. Так что это просто что-то вроде.

NSUserDefaults *factoids; 
NSString *whateverIDstring; // make this a property for convenience 

factoids = [NSUserDefaults standardUserDefaults]; 
self.whateverIDstring = [factoids stringForKey:@"storeTheStringHere"]; 

if ((whateverIDstring == Nil) || ([whateverIDstring isEqualToString:@""])) 
    // it does not yet exist, so try to make a new one... 
else 
    // we already made one last time the program ran 

// when you make a new one, save it in the prefs file like this... 
[factoids setObject:yourNewString forKey:@"storeTheStringHere"]; 
[factoids synchronize]; 

Надеюсь, это поможет!

ONE получить предпочтение к «фактоидам», как в приведенном выше примере

ДВА решить имя для вашего предпочтения. 'storeTheStringHere' в примере.

ТРИ получить строку «whateverIDstring» в примере с использованием stringForKey:

ЧЕТЫРЕ проверить, если это либо ноль или пустым. если да, начните свежий.

FIVE как только вы получите значение, сохраните его, как показано!

Надеюсь, это поможет!

+0

Также DemoApp, который поставляется с Facebook iOS SDK, делает именно это. – Rog 2010-12-02 22:56:35