application:openURL:sourceApplication:annotation:使用null url调用

时间:2013-09-18 22:09:13

标签: ios ios6

我需要我的iOS应用来处理自定义网址方案,例如myapp://d1/d2

我在我的应用URL Types中设置info.plist并实施了所需的委托方法:

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

我运行我的应用程序,然后切换到Safari(因此我的应用程序在后台运行)。在Safari中,我打开网址myapp://d1/d2。结果,我的应用程序按照宣传的方式弹出到前台,并调用上面的方法。问题是其所有参数(applicationurlsourceApplicationannotation)均为空。

花了一些时间而没有得到任何非空参数后,我尝试用折旧的application:handleOpenURL:

替换上面的方法
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
    ...
}

那很有用。 url参数正是我在Safari中输入的内容。

显然我不想使用折旧方法。我做错了什么?

使用iOS 6.1.3在iPad上运行,并在模拟器上运行。

0 个答案:

没有答案