我正在寻找一种功能,当用户收到消息(例如通过WhatsApp应用程序)时,该消息包含以某种方案(前缀)开头的链接,当用户点击该链接时,将调用我的应用程序。
我知道此功能已经可以作为“自定义URL方案”使用,但是现在我也注意到通用链接也有类似的功能。那么,“自定义URL方案”是否存在任何问题?我不想使用通用链接,因为我不希望我的应用限于iOS 9。
此外,看起来Android也具有客户URL的此功能,但是在最新的Android版本6.0上,这里再次提到它们也具有仅在Android 6.0上有效的“应用链接”功能。那么,两者又有什么区别呢?
我不想限制我的应用程序只能在iOS9或Android 9上运行。因此,我猜目前传统的“自定义URL方案”对我来说更具吸引力。
另外,我想确保当用户点击WhatsApp上的链接时“自定义URL方案”将起作用,或者仅在Web浏览器或邮件上的链接时才起作用。
具有自定义方案的URL在许多Android应用程序(SMS,电子邮件,WhatsApp,环聊,您为之命名)中不会显示为链接,这实际上使它们无法被您的应用程序打开。但是,iOS不允许像android那样定义方案+主机+路径。
解决此问题的一种可能的方法是浏览器嗅探(我知道,这很糟糕,但是对定义好的行为的非标准扩展也是如此,尤其是如果一开始没有任何问题的情况下)是在您通过URL访问的资源上HTTP。
您可以检查请求是否源自您为其提供本机应用程序的iOS平台;那么您必须确保设备已安装您的应用程序(这越来越难看;例如,请参见此处),然后,仅重定向到yourapp://the-rest-of-your/uri
,这会向用户显示提示,提示他们是否要打开地址是否在应用程序内部。(在装有iOS 8,Safari浏览器的iPhone 4上进行了测试。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句