美文网首页iOS面试题iOS高级开发iOS精品文章-面试
【2018年最新】iOS面试题之第三方框架

【2018年最新】iOS面试题之第三方框架

作者: ptlCoder | 来源:发表于2018-02-08 14:44 被阅读552次
1、AFNetworking 底层原理分析

AFNetworking主要是对NSURLSession和NSURLConnection(iOS9.0废弃)的封装,其中主要有以下类:
1). AFHTTPRequestOperationManager:内部封装的是 NSURLConnection, 负责发送网络请求, 使用最多的一个类。(3.0废弃)
2). AFHTTPSessionManager:内部封装是 NSURLSession, 负责发送网络请求,使用最多的一个类。
3). AFNetworkReachabilityManager:实时监测网络状态的工具类。当前的网络环境发生改变之后,这个工具类就可以检测到。
4). AFSecurityPolicy:网络安全的工具类, 主要是针对 HTTPS 服务。

5). AFURLRequestSerialization:序列化工具类,基类。上传的数据转换成JSON格式
(AFJSONRequestSerializer).使用不多。
6). AFURLResponseSerialization:反序列化工具类;基类.使用比较多:
7). AFJSONResponseSerializer; JSON解析器,默认的解析器.
8). AFHTTPResponseSerializer; 万能解析器; JSON和XML之外的数据类型,直接返回二进
制数据.对服务器返回的数据不做任何处理.
9). AFXMLParserResponseSerializer; XML解析器;

2、描述下SDWebImage里面给UIImageView加载图片的逻辑

SDWebImage 中为 UIImageView 提供了一个分类UIImageView+WebCache.h, 这个分类中有一个最常用的接口sd_setImageWithURL:placeholderImage:,会在真实图片出现前会先显示占位图片,当真实图片被加载出来后再替换占位图片。

加载图片的过程大致如下:
1.首先会在 SDWebImageCache 中寻找图片是否有对应的缓存, 它会以url 作为数据的索引先在内存中寻找是否有对应的缓存
2.如果缓存未找到就会利用通过MD5处理过的key来继续在磁盘中查询对应的数据, 如果找到了, 就会把磁盘中的数据加载到内存中,并将图片显示出来
3.如果在内存和磁盘缓存中都没有找到,就会向远程服务器发送请求,开始下载图片
4.下载后的图片会加入缓存中,并写入磁盘中
5.整个获取图片的过程都是在子线程中执行,获取到图片后回到主线程将图片显示出来

SDWebImage原理:
调用类别的方法:
1. 从内存(字典)中找图片(当这个图片在本次使用程序的过程中已经被加载过),找到直接使用。
2. 从沙盒中找(当这个图片在之前使用程序的过程中被加载过),找到使用,缓存到内存中。
3. 从网络上获取,使用,缓存到内存,缓存到沙盒。

3、友盟统计接口统计的所有功能?

APP启动速度,APP停留页面时间等


qq技术交流群


qq交流群.jpeg

作者微信公众号


微信公众号.jpg

相关文章

  • iOS最新面试题汇总(四)

    iOS最新面试题汇总:iOS最新面试题汇总(一)iOS最新面试题汇总(二)iOS最新面试题汇总(三)iOS最新面试...

  • iOS最新面试题汇总(三)

    iOS最新面试题汇总:iOS最新面试题汇总(一)iOS最新面试题汇总(二)iOS最新面试题汇总(三)iOS最新面试...

  • iOS最新面试题汇总(一)

    iOS最新面试题汇总:iOS最新面试题汇总(一)iOS最新面试题汇总(二)iOS最新面试题汇总(三)iOS最新面试...

  • iOS最新面试题汇总(二)

    iOS最新面试题汇总:iOS最新面试题汇总(一)iOS最新面试题汇总(二)iOS最新面试题汇总(三)iOS最新面试...

  • 网络编程二

    网络编程二 一、AFNetworking第三方网络框架 AFNetworking2.0使用简单,对最新的iOS特性...

  • iOS面试知识点整理

    参考:2017年最新 iOS面试题及答案2017秋季校园招聘iOS开发岗位面试题集锦iOS面试题300+2017...

  • AFNetWorking(3.0)中NSURLSession的使

    AFNetWoking(3.0)是一个著名的iOS第三方网络通信框架,当前最新的3.0版的实现完全基于NSURLS...

  • iOS面试题07-第三方框架(★★)

    《2018 iOS面试题系列》 一、第三方API是怎么用的? iOS第三方库汇总1.第三方API在官方文档都有说明...

  • MG--自定义刷新控件

    在iOS开发中,我们经常要用到上拉刷新(加载最新数据)和下拉刷新(加载以前的数据),使用第三方框架MJRefres...

  • 【2018年最新】iOS面试题之第三方框架

    1、AFNetworking 底层原理分析 AFNetworking主要是对NSURLSession和NSURLC...

网友评论

    本文标题:【2018年最新】iOS面试题之第三方框架

    本文链接:https://www.haomeiwen.com/subject/nhsttftx.html