模拟启动选项

在我的appDelegate ,我有一些规范,当应用程序启动与文件从即邮件应用程序。

当我启动我的应用程序,一切正常。 当我通过从邮件文件启动应用程序,应用程序崩溃。 不幸的是,我无法debugging它,因为我无法模拟launchingOptions 。 目前,我build立并运行,然后断开iPad,closures我的应用程序,然后去邮件等…有没有一种方法来debugging?

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); } 

(猜测你使用Xcode 4.x)

Product -> Edit Scheme...Run <appname>.app有第一个选项卡( Info )的Launch选项。 selectWait for <appname.app>启动。 现在,当您执行构build和运行(或只是运行)时,debugging器将等待您手动启动应用程序。