与IOS深度链接混淆

时间:2015-04-16 05:30:00

标签: objective-c iphone facebook deep-linking

我只想问一下,有人在这里知道为IOS应用程序创建深层链接的一步一步的过程吗?我试过阅读一些文章,但它没有给我绝对的答案。谢谢:)

3 个答案:

答案 0 :(得分:3)

深层链接基本上只是为您的应用设置网址,以便其他应用可以使用信息启动它。如果你设置它,可以启动到应用程序的某些部分,以便你的应用程序对某些网址做出反应。所以你需要做一些事情。对于此示例,我将使用两个应用程序。如果您尝试与现有应用程序集成,您只需要了解他们的网址方案。因此,对于此示例,我将使用'消息'作为一个应用程序和' Schedule'作为另一个 首先:在'消息'应用我们将需要设置我们的Schedule应用程序调用的方案。

因此,打开您的第一个应用我们需要添加方案,以便其他应用可以打开它。转到info.plist点击小+并点击URL types点击三角形展开并点击+类型URL Schemes,然后在其中添加一个项目并将您的应用名称放入其中。同时添加URL identifier$(PRODUCT_BUNDLE_IDENTIFIER)作为值。 `info.plist configurations

然后我们只需要添加我们可以打开的应用程序,然后再次点击顶级+并添加LSApplicationQueriesSchemes这会将应用程序列入白名单,以便我们可以评估天气是否安装在设备上。

LSApplicationQueriesSchemes 现在我们可以跳转到另一个应用程序并创建一种方法来调用它。对于这个例子,让我们按下按钮就可以实现。

IBAction launchMessagesApp() {

  let url = NSURL(string: "Messages://") where UIApplication.sharedApplication().canOpenURL(url) {
    self.launchAppWithURL(url, name: "Messages")
    }

canOpenURL(url)检查应用程序是否在设备上。如果您愿意,可以将应用程序商店启动到您的应用程序,如果它返回false。然后launchAppWithURL实际启动它。这是基本设置,您可能还希望有多个事情发生,因此您可能有多个url方案启动相同的应用程序,但将其带到应用程序的不同部分。在函数的应用程序代理中

  func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
    print(url)
    //Any customizations for the app here  
}

你可以做任何你能想象到的事情。

答案 1 :(得分:0)

你检查了收费公路吗?它是一个开源工具,用于在iOS应用程序中启用深层链接。 http://urxtech.github.io/#GettingStarted

答案 2 :(得分:-1)

如果要创建深层链接,可能需要执行一些服务器代码来检测用户设备/浏览器并根据此操作执行某些操作。

我已经创建了一个简化此过程的工具,您可以在此处查看: http://www.uppurl.com/

它主要是一个短链接工具,用于检查用户设备并根据其设备为其提供正确的URL。使用此工具,您不需要编写任何服务器代码,它还可以处理不同的设备,操作系统和浏览器。