Вы можете создать одноэлементный объект, который будет использоваться для хранения токена. Class1 получит токен и передаст этот токен синглтону.Затем синглтон будет хранить этот токен и делать его доступным для всех других классов по мере необходимости.
Class1:
myToken = [self getToken];
[TokenStoringSingleton setToken:myToken];
....
Class2 (или любой другой класс, который хочет использоватьтокен):
myToken = [TokenStoringSingleton getToken];
....
Вы также можете создать новую переменную экземпляра в вашем делегате приложения для ее сохранения, например, MyAppDelegate.h
NSString *myToken;
@property (nonatomic, retain) NSString *myToken;
MyAppDelegate.m
@synthesize myToken;
Тогда вы могли бы использовать его из ваших классов Class1:
myToken = [self getToken]; // This calls a method that gets the token from the server
MyAppDelegate *delegate = (MyAppDelegate *)[UIApplication sharedApplication].delegate;
delegate.myToken = myToken;
Class2:
MyAppDelegate *delegate = (MyAppDelegate *)[UIApplication sharedApplication].delegate;
myToken = delegate.myToken;