如何使用iOS应用程序使用branch.io deeplink打开另一个iOS应用程序



我们控制了两个iOS应用程序。让我们称它们为应用程序ABC和XYZ。使用branch.io sdk,我们想知道如何:

  • 通过编程(SWIFT)创建APP ABC内部的延期深链接,目的是将用户带到App XYZ。我们将使用现有的APP XYZ的URL方案,因为现在的后端服务器根本不参与此工作。
  • 我们希望branch.io deep链接在敲击uibutton时激活(因此在这里不涉及Web浏览。只是一个本机按钮)
  • 我们想传递一个20ish长ID(字母和数字),也许是登录信息(如果我们可以安全安全地执行)到接收应用程序aka aka xyz应用程序。

我们遵循了https://docs.branch.io/pages/apps/ios/的步骤,以确保基础知识的工作。这包括"测试深链接"部分。很好。

我相信我已经阅读了与iOS和branch.io提供的仪表板有关的每个API文档。

对我而言,最有趣的问题是:

  • iOS特定
  • 分支概念:分支通用对象
  • 配置仪表板
  • 也扫描了branch.io博客的扫描页面

代码在这里(更改了内容,以便不识别我们在谈论的现实世界中的哪些应用程序,因为这并不重要):

    private class func createBranchIoLink(someIdentifier: String) {
        // Create content reference
        let buo = BranchUniversalObject(canonicalIdentifier: "content/(someIdentifier)")
        buo.canonicalUrl = "xyz://content/(someIdentifier)" // example is https://example.com/content/123
        buo.title = "Some Title"
        buo.contentDescription = "Add it to the other app"
        // Create link reference
        let lp: BranchLinkProperties = BranchLinkProperties()
        lp.channel = "ios"
        lp.feature = "some-feature"
        buo.getShortUrl(with: lp) { (url, error) in
            print(url ?? "")
            print(error ?? "")
            print("ok done")
            // when I take the url given to us here, the URL takes me back to THIS app instead of the app I want!
        }
    }

感谢您提供的任何帮助。谢谢!

brian来自Branch!

您可以在App ABC中生成链接以打开App XYZ,但这也意味着您将无法生成打开APP ABC的链接。为了实现此流程,您需要将分支SDK集成到两个iOS应用程序中,但是在分支仪表板上为XYZ创建一个应用程序。

这里有一些要记住的事情:

  • 设置App Xyz(https://docs.branch.io/pages/dashboard/integrate/)的分支仪表板
  • 将App XYZ的分支SDK集成(https://docs.branch.io/pages/apps/ios/)
  • 将ABC ABC的分支SDK集成,但请使用分支仪表板上提供的实时键xyz xyz

这基本上创建了针对App XYZ的链接,如果正确设置了URI方案和通用链接,则应打开该应用程序,并与App XYZ的分支仪表板一致。App ABC仅需要分支密钥来生成链接,并且wittlement file或info.plist不需要修改应用程序ABC。

我希望这会有所帮助!

我有ABC配置分支的ABC应用。

我有XYZ应用,带有XYZ配置的分支

我想在ABC链接内生成打开xyz的内部。

(ABC现在也生成自身的链接)。

相关内容

最新更新