美文网首页
1.9、iOS面试题之其他

1.9、iOS面试题之其他

作者: zmfflying | 来源:发表于2020-06-14 14:41 被阅读0次

    1.如何优化项目编译速度?

    https://www.jianshu.com/p/c9e3fb3dfa53

    CCache

    在XCode -> Build Settings -> Build Active Architecture Only 改为YES

    2.冷启动速度如何优化?

    减少非系统库的依赖、合并非系统库,苹果最多支持6个非系统的动态库合并为一个;

    定期清理项目里不使用的类和方法,检测工具可以使用AppCode

    将不必须在 +load 方法中做的事情延迟到 +initialize 中,关于二者的区别可以参考这篇文章;

    减少分类和分类里方法的数量;

    尽量不要用 C++ 虚函数;

    删减一些无用的静态变量。

    3.后台如何保活?

    https://blog.csdn.net/qq_38520096/article/details/102626210

    第一种叫无声音乐保活(即在后台开启音频播放,只不过不需要播放出音量且不能影响其他音乐播发软件),第二种叫Background Task,但是这种方法在iOS 13以后只能申请短短的30秒钟时间,但是在iOS7-iOS13以前是可以申请到3分钟的保活时间的,当然我们也可以经过处理来申请到更多的保活时间。

    使用NSTimer循环申请保活时间,但是建议不要无限申请保活时间,因为系统如果发现该应用一直在后台运行时,是可能会直接crash掉你的应用的 ,错误码0x8badf00d

    4.如何做性能检测,并逐项提出优化建议?

    5.APP埋点怎么做?

    https://www.jianshu.com/p/21b9f99c574e

    https://www.jianshu.com/p/3a50d1805655

    6.容错处理你们一般是注意哪些?

    7.项目开始容错处理没做?如何防止拦截潜在的崩溃?

    8.APP动态化方案?自己实现一个会怎么做?

    9.APP架构怎么理解?如何搭建和优化?

    10.如果让你重构XX页面,你会怎么做?

    11.webRTC的PLI是什么意思?原理是什么?

    12.webSocket如何建立连接的?原理是什么?

    https://www.jianshu.com/p/821b777555d3

    WebSocket 是 HTML5 一种新的协议。它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯,它建立在 TCP 之上,同 HTTP 一样通过 TCP 来传输数据,但是它和 HTTP 最大不同是:

    WebSocket 是一种双向通信协议,在建立连接后,WebSocket 服务器和 Browser/Client Agent 都能主动的向对方发送或接收数据,就像 Socket 一样;

    WebSocket 需要类似 TCP 的客户端和服务器端通过握手连接,连接成功后才能相互通信。

    13.你们IM采用什么协议?

    14.简述H264编码的优缺点

    15.音频采样如何优化?

    16.解码用的硬解还是软解?各自优缺点?

    17.RTMP协议内容?RTSP协议是什么?

    https://www.jianshu.com/p/c2284659452f

    18.发布出去的版本,怎么收集crash日志?不使用bugly等第三方平台或者这些第三方平台是怎么收集crash日志的?

    19.开发过程中遇到过什么困难,是如何解决的?

    20.遇到一个问题完全不能理解的时候,是如何帮助自己理解的?举个例子?

    21.本地数据如何加密?

    22.对称加密和非对称加密优缺点?

    https://www.jianshu.com/p/b078282653b3

    23.简述哈希算法,有什么作用?

    24.非对称加密有哪些算法?

    25.如何破解和监听HTTPS?

    26.如何判断手机是否越狱

    27.如何防止被反编译

    相关文章

      网友评论

          本文标题:1.9、iOS面试题之其他

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