iOS 开发之 使用SFSafariViewController读取Safari的cookie

本文介绍了如何在iOS应用中使用SFSafariViewController来读取Safari的cookie。尽管SFSafariViewController没有直接提供获取cookie的方法,但它与Safari共享cookie,可以通过特定步骤间接获取。通过创建HTML页面,设置cookie,并利用SFSafariViewController加载该页面,然后通过监听特定URL回调来获取cookie内容。
摘要由CSDN通过智能技术生成

UIWebView

  1. 始祖级别,支持的iOS版本比较多
  2. 可支持打开URL,包括各种URL模式,例如 Https,FTP等
  3. 可支持打开各种不同文件格式,例如 txt,docx,ppt,,音视频文件等,很多文档阅读器会经常使用这个特性,感兴趣的可以查一下Apple的文档,支持的格式还是挺多,只是不同iOS 版本的支持程度不太一样,使用时请多留意测试确认~
  4. 占用内存比较多,尤其是网页中包含比较多CSS+DIV之类内容时,很容易出现内存警告(Memory Warning)
  5. 效率低,不灵活,尤其是和 JavaScript交互时
  6. 无法清除本地存储数据(Local Storage)
  7. 代理(delegate)之间的回调比较麻烦,提供的内容比较低级,尤其是UI部分。如果想自己定制一个类似 Safari 的内嵌浏览器(Browser),那就坑爹无极限了,例如我们PDF Reader系列中的内嵌Browser,自己手动模拟实现Tab切换,底部Tool及各种Menu等,说多了都是泪~~

WKWebView

  1. iOS 8引入的,比较年轻
  2. 在内存和执行效率上要比UIWebView高很多
  3. 开放度较高但据说Bug成吨
  4. 类似UIWebView,UI定制比较麻烦···
    没具体测试使用过,就不继续列举了 L~

SFSafariViewController

  1. iOS 9引入,更加年轻,意味着是Apple的新菜,将来应该会被广泛的使用
  2. 也是用来显示网页内容的
  3. 这是一个特殊的View Controller,而不是一个单独的 View,和前面两个的区别
    在当前App中使用Safari的UI框架展现Web内容,包括相同的地址栏,工具栏等,类似一个内置于App的小型Safari
  4. 共享Safari的一些便利特性,包括:相似的用户体验,和Safari共享Cookie,iCloud Web表单数据,密码、证书自动填充,Safari阅读器(Safari Reader)
  5. 可定制性比较差,甚至连地址栏都是不可编辑的,只能在init的时候,传入一个URL来指定网页的地址

如果想知道使用SFSafariViewController的优势具体分析,请查看下方文章

http://blog.csdn.net/jiang314/article/details/52679974

这里介绍如何通过SFSafariViewController来获取Safari上网站的cookie。

SFSafariViewController并没有提供给我们直接获取cookie的方法,告诉我们SFSafariViewController与Safari共享了cookie,这样就提供了给我们通过其他方式获取cookie

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值