应用程序如何“拦截”iOS中的openURL方法?

时间:2014-02-13 04:14:30

标签: ios objective-c

如果您安装了Facebook应用程序,并使用应用程序openURL方法打开Facebook页面,您会注意到Facebook应用程序接管并处理此URL,而不是Safari执行此操作。

您自己的应用是如何实现的?

2 个答案:

答案 0 :(得分:2)

基本上,您可以为应用设置自定义网址方案。这是基于每个应用程序。例如,facebook的app url可能类似于“fb://”。您可以为URL创建所需的前缀,但请确保它是唯一的(如果有两个应用使用相同的前缀,则不确定会发生什么情况。)

完成所有设置后,您可以在appdelegate类中使用以下方法捕获自定义URL:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
    // handler code here
}

答案 1 :(得分:1)

您需要在应用中实施自定义网址方案:请阅读link中的“实施自定义网址方案”部分。

以下是有关此主题的教程链接:Tutorial 1Tutorial 2