4

我正在寻找功能,当用户收到一条消息时 - 比如说通过 WhatsApp 应用程序 - 包含以某个方案(前缀)开头的链接,当用户点击该链接时,我的应用程序将被调用。

我知道这个功能已经可以作为“自定义 URL 方案”使用,但我现在也注意到通用链接也有类似的东西。那么,“自定义 URL 方案”有什么问题吗?我不想使用通用链接,因为我不希望我的应用程序仅限于 iOS 9。

此外,Android 似乎也有这个客户 URL 的功能,但同样,在最新的 Android 6.0 版本上,这里提到他们还有“App Links”功能,该功能仅适用于 Android 6.0。那么,再次,两者之间有什么区别?

我不想限制我的应用只能在 iOS9 或 Android 9 上运行。所以我想传统的“自定义 URL 方案”对我来说暂时更有吸引力。

此外,我想确保“自定义 URL 方案”在用户点击 WhatsApp 上的链接时有效,或者仅在网络浏览器或邮件上的链接时有效。

4

1 回答 1

1

带有自定义方案的 URL 在许多 Android 应用程序(SMS、电子邮件、WhatsApp、环聊等)中不会显示为链接,这实际上使它们无法被您的应用程序打开。然而,iOS 不允许像 android 那样定义方案 + 主机 + 路径。

对此的一种可能(hacky)解决方案是浏览器嗅探(我知道,邪恶,但对明确定义的行为的非标准扩展也是如此,特别是如果首先没有破坏)在您通过可访问的 URL 公开的资源上HTTP(s)。

您可以检查请求是否来自您提供本机应用程序的 iOS 平台;那么您必须确保设备安装了您的应用程序(这越来越难看;例如,请参见此处),然后才重定向到yourapp://the-rest-of-your/uri,这会导致向用户显示他们是否要打开地址的提示在应用程序内部与否。(在带有 iOS 8、Safari 浏览器的 iPhone 4 上测试。)

于 2015-12-17T14:49:25.127 回答