iphone - 在应用程序中打开,从 launchOptions 获取 UIApplicationLaunchOptionsURLKey

标签 iphone objective-c ios ios4

我正在尝试在我的应用程序中打开一个 .pdf 文件。我调整了 Info.plist,以便可以在我的应用程序中打开 .pdf。

我使用以下代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];
    thePDFurl = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
    return YES;
}

在另一个类中,我的 appDelegate(包含那个 didFinishLaunchingWithOptions),我有一行:

appDel = [[UIApplication sharedApplication]delegate];
[theLabel setText:[NSString stringWithFormat:@"%@", appDel.thePDFurl]];

不知何故,theLabel 总是显示 (null)。我错过了什么?

最佳答案

我可能误解了你的意思。如果是,请忽略。

如果您希望用户能够使用您的应用“打开方式...”PDF,您可以实现

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

例如

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    NSLog(@"Open URL:\t%@\n"
     "From source:\t%@\n"
     "With annotation:%@",
     url, sourceApplication, annotation);

    NSString *filepath = [url path];
    //...
    return YES;
}

我很确定这适用于启动应用程序和调用它(即如果它已经在后台)。

关于iphone - 在应用程序中打开,从 launchOptions 获取 UIApplicationLaunchOptionsURLKey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6384090/

相关文章:

iphone - UITableView的scrollToRowAtIndexPath有时只滚动

ios - 从自己的类方法中调用方法

iphone - 逻辑错误: The left operand of '&' is a garbage value

iphone - 根据用户事件注销

iphone - 调用当前的 Modal ViewController 两次?

ios - 当我使用 PFQueryTableViewController 子类时出现 Parse.com 错误 'Method not allowed when Pinning is enabled.'

iOS:自定义辅助触摸菜单并在顶级菜单中添加我的应用程序启动器

iphone - 无法测试从 iTunes 商店购买,出现两个看似相互冲突的错误

iphone - 如何只允许单个 UIViewController 在横向和纵向方向上旋转?

objective-c - For 循环中的奇怪错误