Использование SSkeychain для хранения токенов доступа

Я пытаюсь выяснить, как использовать SSkeychain для хранения токенов доступа для instagram api. В настоящее время я использую класс NSUserDefault, но я не думаю, что это лучшие идеи.

Нужно ли выделять и инициализировать класс SSkeychain для его использования?

Ответ 1

SSKeychain просто предоставляет методы класса, поэтому вам не нужно инициализировать экземпляр. Однако это требует некоторой настройки. readme - отличный источник информации об этом.

Вот пример кода, который поможет:

// Specify how the keychain items can be access
// Do this in your -application:didFinishLaunchingWithOptions: callback
[SSKeychain setAccessibilityType:kSecAttrAccessibleWhenUnlocked];

// Set an access token for later use
[SSKeychain setPassword:instagramToken forService:@"InstagramService" account:@"com.yourapp.keychain"];

// Access that token when needed
[SSKeychain passwordForService:@"InstagramService" account:@"com.yourapp.keychain"];

// Delete the token when appropriate (on sign out, perhaps)
[SSKeychain deletePasswordForService:@"InstagramService" account:@"com.yourapp.keychain"];

Я бы также рекомендовал создавать те константы @"InstagramService" и @"com.yourapp.keychain", чтобы было проще ссылаться на них.

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