iOS高级技术文章

禁用`URL Scheme`和`Universal Link`(

2019-07-10  本文已影响0人  CodeRookie

为什么要禁用URL SchemeUniversal Link(通用链接)

通常我们APP中都会嵌套一些web页面,有时我们的web页面会被DNS劫持从而跳转到其他APP中;或者是某些APP的Universal Link(通用链接)设置的比较容易触发,当web跨域跳转就有可能跳转到这些APP。比如苏宁易购的Universal Link(通用链接)为*.m.suning.com,只要web进行跨域跳转*.m.suning.com就会拉起苏宁易购APP。在这种情况下的话我们就需要在我们的APP中对web做一些处理从而来禁止拉起这些APP。
在iOS 9.0之后如果需要使用URL Scheme唤起APP的话需要在info.plist中增加白名单,只有在白名单中的URL Scheme才可以使用,因此可以禁止跳转到意料之外的APP。

<key>LSApplicationQueriesSchemes</key>
 <array>
    <string>openapp.jdmobile</string>
</array>

WKWebView

在iOS8.0后APP推出的WKWebView是现有大部分APP中常用的控件之一。

UIWebView

虽然iOS8.0后提供了WKWebView,但是如果需要手动管理cookie的话(WKWebView在iOS11.0之后才可以手动管理cookie)或其他原因还是又很大一部分使用UIWebView的APP。

文章若有不对地方,欢迎批评指正

上一篇下一篇

猜你喜欢

热点阅读