首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Branch.io自定义url缩短器&通用链接

Branch.io自定义url缩短器&通用链接
EN

Stack Overflow用户
提问于 2016-02-24 16:39:59
回答 1查看 3.2K关注 0票数 3

假设:我有一个自定义的URL缩短器,它重定向到一个branch.io长URL。该自定义URL域已在我的应用程序的通用链接权利文件中注册。当用户点击短链接时,应用程序将打开并调用application:continueUserActivity:restorationHandler:...。在这种方法中,我得到位于短链接后面的重定向URL (分支),基于新链接创建一个新的NSUserActivity,并从分支SDK调用"continueUserActivity“方法(以新的活动作为参数)。

问题是,分支SDK的回调不返回任何与该链接相关的内容。它返回时好像没有传递URL。

如果我硬编码来自重定向和调用分支SDK的链接,而不等待重定向响应,那么一切都正常。我想这是分支SDK中与时间相关的东西。

问题是:在使用上述重定向方案时,如何使分支机构识别链接并将所需的参数还给我?(我想使用我自己的网址速记器,而不是分支机构的那个)

EN

回答 1

Stack Overflow用户

发布于 2017-02-18 16:43:39

在确定是否需要处理分支链接时,分支检查以验证NSUserActivity是否为NSUserActivityTypeBrowsingWeb类型。如果是,分支将检查.webpageURL以确定它是否为分支链接。如果不是,该处理解没有单击任何分支链接。

要在应用程序打开后手动将分支链接传递到SDK,有两个可用的函数:.continue和.handleDeepLink。

.continue

代码语言:javascript
复制
    let activity = NSUserActivity(activityType: "NSUserActivityTypeBrowsingWeb")
    activity.webpageURL = URL(string: "https://testbed-swift.app.link/77Q527xswy")
    Branch.getInstance().continue(activity);

.handleDeepLink

代码语言:javascript
复制
    Branch.getInstance().handleDeepLink(URL(string: "https://testbed-swift.app.link/77Q527xswy"))

如果调用这些方法之一,分支SDK将处理传入的分支链接。如果这些方法不适合您,我将检查以验证您实际上是在传递代码中的一个工作分支链接,而不是您用来打开应用程序的短链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35607924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档