Получение некоторой информации об устройстве до загрузки основного вида приложения
Objective-c довольно нов для меня, поэтому я вполне могу задавать нелепо простой вопрос, но, просматривая веб-страницы, в некоторых книгах я в некоторой степени озадачен. Вполне возможно, из-за моего серьезного недостатка знаний с obj-c. Так что... любая помощь с этим будет очень полезна...
Все, что я хочу сделать, - это получить простую информацию об устройстве, на котором запущено приложение (используя [UIDevice currentDevice]) при запуске приложения, но до загрузки основного представления приложения. Простые вещи, но, честно говоря, я не совсем понял, как это сделать! Затем я хочу получить любую информацию, которая должна быть доступна (в переменной? Не слишком уверен, что это правильный термин с obj-c) во всем приложении и его представлениях. Опять же, я не очень представляю, как.
Я пришел из Сети, так что это в значительной степени для меня в новинку. Так что... да, любые советы / указатели, помощь и т. Д. Были бы смехотворно полезны!
Заранее спасибо, извините за мой вопрос n00b!
2 ответа
Место для этого, вероятно, будет в вашем приложении делегатов -application:didFinishLaunchingWithOptions:
метод. Этот метод вызывается, когда ваше приложение завершает запуск, и (как правило) отвечает за добавление вашего основного вида в окно приложения. Вы можете поместить информацию в переменную экземпляра вашего делегата приложения. Вы можете получить ссылку на вашего делегата приложения из любой точки вашей программы, позвонив [[UIApplication sharedApplication] delegate]
, Пример реализации может выглядеть примерно так:
// In MyAppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//Get your information, potentially put it into an
//instance variable of the App Delegate
//Add the main view to the view hierarchy
[self.window addSubview:viewController.view];
[self.window makeKeyAndVisible];
return YES;
}
Возможно, вы сможете использовать метод viewController "viewWillAppear". он захочет находиться в той же области, что и метод viewDidUnload, который будет находиться в любом файле *ViewController.m, связанном с основным представлением.
Возможно, вам придется сделать это в подпрограмме main() перед вызовом UIApplicationMain.