一: iOS常驻线程
二: AFNetWorking 2.0与3.0的区别
三: 当开的后台线程太多, 如何进行内存管理
答: 详见:https://blog.csdn.net/yingbi2014/article/details/82804283
学习网址2:https://www.jianshu.com/p/80848fdd1e2a
四: 大家可能都听说过 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但其实:HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。
主要使用了对称加密和非对称加密
连接建立过程使用非对称加密,保证安全
非对称加密很耗时! 因为加密和解密使用的手段不一样
数据传输过程是使用的对称加密,减少耗时所带来的性能损耗
Q: HTTPS 为什么安全?
A: 因为 HTTPS 保证了传输安全,防止传输过程被监听、防止数据被窃取,可以确认网站的真实性。
Q: HTTPS 的传输过程是怎样的?
A: 客户端打包请求 服务器端接受请求 服务器端返回数字证书 客户端生成加密信息。 客户端方发送加密信息。 服务端解锁加密信息。服务器端向客户端返回信息。 客户端解锁返回信息。
Q: 为什么需要证书?
A: 防止”中间人“攻击,同时可以为网站提供身份证明。
Q: 使用 HTTPS 会被抓包吗?
A: 会被抓包,HTTPS 只防止用户在不知情的情况下通信被监听,如果用户主动授信,是可以构建“中间人”网络,代理软件可以对传输内容进行解密。
好了,回归到本文标的问题,我们来总结回顾一下。
Q: HTTPS用的是对称加密还是非对称加密?
Q: HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。
六: 响应链机制
1、响应者链通常是由视图(UIView)构成的;
2、一个视图的下一个响应者是它视图控制器(UIViewController)(如果有的话),然后再转给它的父视图(Super View);
3、视图控制器(如果有的话)的下一个响应者为其管理的视图的父视图;
4、单例的窗口(UIWindow)的内容视图将指向窗口本身作为它的下一个响应者
需要指出的是,Cocoa Touch应用不像Cocoa应用,它只有一个UIWindow对象,因此整个响应者链要简单一点;
5、单例的应用(UIApplication)是一个响应者链的终点,它的下一个响应者指向nil,以结束整个循环。
七: iOS性能优化
tableview cell的复用
高度缓存
减少视图层级,不需要点击事件使用CALayer替代
圆角、阴影等造成离凭渲染的情况使用shawdow path来绘制
图片应该使用png图片,少使用其他格式的图片,图片大小跟控件一致,可以考虑将多张图片合成一张图片来显示。
减少透明视图
减少离屏渲染
合理使用光栅化(从GPU的操作转移到CPU,生成位图缓存起来,直接复用)
采用异步渲染
八: iOS数据库文件加密
答: 采用'FMDB/SQLCipher', 详见 https://www.cnblogs.com/levilinxi/p/4301913.html
九: ios 获取崩溃日志
答: NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler); 详见 https://www.jianshu.com/p/97336bc6da4a