Моделировать параметры запуска - PullRequest
4 голосов
/ 04 января 2012

в моем appDelegate у меня есть некоторые спецификации, когда приложение запускается с приложением File from ie Mail.

Когда я запускаю свое приложение, все работает нормально.Когда я запускаю приложение через файл из почты, приложение вылетает.К сожалению, я не могу отладить его, так как не могу смоделировать launchingOptions.на данный момент я собираю и запускаю, затем отключаю iPad, закрываю приложение, а затем перехожу на почту и т. д. Есть ли способ отладки?

Appdelegate.m

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

NSURL *url = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];

IntroViewController *introViewController = (IntroViewController *)self.window.rootViewController;

if (url !=nil) {
    if ([url isFileURL]) {
        introViewController.fileUrl = url;
    }


}

NSLog(@"%@",[url path]);

return YES;
}

IntroViewController

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSLog(@"Hello");
    if (fileUrl != nil) {
        IntroTableViewController* introTable = (IntroTableViewController *)segue.destinationViewController;            
        introTable.openedByURL = [fileUrl path];

        TabBarController* tabBarController = (TabBarController *)segue.destinationViewController;
        UINavigationController* navigationController = (UINavigationController *)[[tabBarController viewControllers] objectAtIndex:0];
        TargetLSController* targetViewController = (TargetLSController *)[[navigationController viewControllers] objectAtIndex:0];
        NSString *urlPath = [fileUrl path];
        targetViewController.currentFilePath = urlPath;
        NSLog(@"%@",urlPath);
    }
}

- (void)viewDidAppear:(BOOL)animated
{
    [self performSegueWithIdentifier:@"Launch" sender:self]; 
    NSLog(@"%@",fileUrl);
}

1 Ответ

13 голосов
/ 04 января 2012

(Предполагается, что вы используете Xcode 4.x)

Product -> Edit Scheme... и под Run <appname>.app есть опция Launch на первой вкладке (Info).Выберите Wait for <appname.app> для запуска`.Теперь, когда вы выполняете сборку и запуск (или просто запуск), отладчик будет ждать, пока вы запустите приложение вручную.

...