Получение некоторой информации об устройстве до загрузки основного вида приложения

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.

Другие вопросы по тегам