iOS:如果应用程序未在后台运行,则调用openURL会在启动时崩溃应用程序

时间:2012-05-09 10:56:36

标签: iphone objective-c ios

我正在尝试从外部网址(使用链接myapp://sale/1234的电子邮件/网页)将我的应用启动到特定视图。

如果该应用尚未在后台运行,则应用会在启动时崩溃。

如果应用在后台运行,则会application:openURL:sourceApplication:annotation:被完美调用。

请帮帮我。

2 个答案:

答案 0 :(得分:2)

我使用以下代码修复

if([[UIApplication sharedApplication] canOpenURL:url]){            
        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
            [[UIApplication sharedApplication] openURL:url];
        });
    }

答案 1 :(得分:0)

我的错误是fellas,它是coredata manageObjectContext,在调用openUrl时没有创建。如果未创建上下文,则保存url,并在创建managedObjectContext后调用openUrl。 OpenUrls与我的崩溃无关。它总是很好......非常感谢。