Ios UITextView:点击一个应该指向同一个应用程序的通用深度链接,将在Safari中打开备用URL

Ios UITextView:点击一个应该指向同一个应用程序的通用深度链接,将在Safari中打开备用URL,ios,uitextfield,deep-linking,branch.io,ios-universal-links,Ios,Uitextfield,Deep Linking,Branch.io,Ios Universal Links,我有一个Branch.iouniversal deep链接,在我的应用程序中显示产品页面,如果应用程序未安装,则显示等效的网站页面 当点击来自其他应用程序(如WhatsApp或Notes)的链接时,链接会起作用。我的应用程序启动并立即显示正确的产品 但是,如果用户使用我自己的应用程序的消息平台将此链接作为文本消息传递给另一个用户,则此消息将使用UITextView显示在我的应用程序中,并且点击此UITextView中的链接始终会在Safari中启动回退URL 只有在从Safari切换回我的应用程

我有一个Branch.iouniversal deep链接,在我的应用程序中显示产品页面,如果应用程序未安装,则显示等效的网站页面

当点击来自其他应用程序(如WhatsApp或Notes)的链接时,链接会起作用。我的应用程序启动并立即显示正确的产品

但是,如果用户使用我自己的应用程序的消息平台将此链接作为文本消息传递给另一个用户,则此消息将使用UITextView显示在我的应用程序中,并且点击此UITextView中的链接始终会在Safari中启动回退URL

只有在从Safari切换回我的应用程序时,才会调用深层链接处理程序,然后正确处理链接


我希望我的应用程序能够立即处理自己的深层链接,即使这些链接是从应用程序本身内部点击的,而无需启动Safari。有人知道如何实现这种行为吗?

深度链接是提供高质量用户体验的一个极其重要的部分。通过深度链接,您可以将用户带到他们单击的确切位置,甚至提供定制的登机体验

您无需启动safari浏览器即可在应用程序内自动路由,请按照此链接进行详细实施:


请随便写信给我support@branch.io如果您还有其他疑问。

谢谢您的回答。我已经实现了所描述的解决方案,效果很好。然而,这并不能解决问题。TextView使用NSAttributeString“link”属性创建的超链接,始终启动Safari以处理该链接。在iOS 13中,Safari启动并立即提示“在[应用程序]中打开?”这是可以的,但似乎很愚蠢,因为点击链接时用户已经在应用程序中了。我将通过实现“willinteractivewithurl”委托调用来解决这个问题,以检测我的链接并单独处理它们。