本篇博客背景:
1:本人是网易新闻app的忠实用户,大约天天有2~3个小时的使用时间。
2:在如此频繁且长时间的使用过程当中,几乎没有遇到过闪退的状况。
不得不佩服人家优化的效果之好,也不得不感叹本身和大牛之间的差距之大。(不是作广告。。是真爱。。)
3:一直都以为网易新闻app的详情页作的特别好。前段时间,看到网上有很多人说网易新闻的详情页是用coreText(富文本)实现的。以为很好笑,只是一个复制文字的功能,coreText便没法实现,便能排除coreText的可能性了。
但是这些错误的言论在网上残留传播,毒害新手,这里但愿你们注意,互联网上的信息是须要你们辨而识之,思然后取。不要盲目相信。实际上,新闻详情页明显是经过UIWebView实现的。
4:基于以上三点,决定写篇博客分析一下。
5:本文谢绝转载,若是转载,请注明源地址:
http://386502324.blog.163.com/blog/static/11346937720154293438399/
技术实现分析
一:接口分析
如下是我抓取的网易新闻的接口,若是有人想本身抓,推荐使用Charles或者paros(如何使用,自行百度)
1:全文字示例接口
http://c.3g.163.com/nc/article/AQ76LHPS00963VRO/full.html
2:图文混排,轻松一刻(典型含有大量的图包含动图)。
http://c.3g.163.com/nc/article/AQ4RPLHG00964LQ9/full.html
3:包含有图集(nba)(实际上只有一张图)
http://c.3g.163.com/nc/article/AQ72N9QG00051CA1/full.html
结论:详情页返回的接口是json串。因而排除webview直接加载url的状况。
二:Data+模板生成html
经过接口分析,咱们排除了webview直接加载url的可能性。那是如何实现的呢?答案是,加载本地的html。javascript