我正在寻找这样的功能:当用户收到一条消息(假设通过 WhatsApp 应用程序)包含以特定方案(前缀)开头的链接时,当用户点击该链接时将调用我的应用程序。
据我所知,此功能已经作为“自定义 URL 方案”提供,但我现在也注意到通用链接也有类似的功能。那么,“自定义 URL 方案”有什么问题吗?我不想使用通用链接,因为我不希望我的应用程序仅限于 iOS 9。
而且,看起来Android也有客户URL这个功能,但是在最新的Android 6.0版本上又提到了here http://developer.android.com/training/app-links/index.html他们还有“应用程序链接”功能,该功能仅适用于 Android 6.0。那么,话又说回来,这两者有什么区别呢?
我不想限制我的应用程序只能在 iOS9 或 Android 9 上运行。所以我想传统的“自定义 URL 方案”暂时对我更有吸引力。
另外,我想确保“自定义 URL 方案”在用户点击 WhatsApp 上的链接时起作用,或者仅在 Web 浏览器或邮件上的链接起作用。
具有自定义方案的 URL 不会在许多 Android 应用程序(短信、电子邮件、WhatsApp、环聊等)中显示为链接,这实际上使您的应用程序无法打开它们。然而,iOS 不允许定义方案 + 主机 + 路径就像安卓一样 http://developer.android.com/guide/topics/manifest/data-element.html.
一个可能的(hacky)解决方案是浏览器嗅探(我知道,这是邪恶的,但对明确定义的行为的非标准扩展也是如此,特别是如果一开始就没有任何问题的话)通过可访问的 URL 公开的资源HTTP。
您可以检查请求是否源自您为其提供本机应用程序的 iOS 平台;那么你必须确保设备安装了你的应用程序(这变得越来越难看;请参阅例如这里 https://stackoverflow.com/questions/1604884/setting-a-cookie-in-an-iphone-app) 然后,才重定向到yourapp://the-rest-of-your/uri
,这会提示用户是否要在应用程序内打开该地址。 (在装有 iOS 8、Safari 浏览器的 iPhone 4 上测试。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)