Android与iOS的区别
最变成我最爱的一个问题,但一直没思考真正的回答思路是什么样的;
面试者有提到,但不全面,特此整理。
1 后台机制不同
- iOS中任何第三方程序都不能在后台运行;安卓中任何程序都能在后台运行,直到没有内存才会关闭。
2 推送不同
- 以上导致推送不同。以HT为例,安卓在线推送走的自己的服务,离线推送走的接入的各大厂商(如华为、小米、OPPO,vivo),以及其他都走FCM;
- iOS因任何程序都不能在第三方运行,所以都走官方的APNs。
- 其他解决方案,可接入第三方,如:极光
- 详见:消息推送
3 系统
- iOS只有系统比较少,系统不支持回退到低版本,低版本调用新系统的资源会崩溃,高版本不完全兼容低版本系统,只能单向升级;
- 安卓系统比较多,占用市场份额也多,且系统升级较快,不同厂商对安卓系统又自己进行集成,不同厂商的手机系统也有部分差异;
4 分辨率
- 安卓分辨率多,可从数据统计网站查看主流分辨率来提测试点
- iOS较少,也可从数据统计网站查看主流分辨率来提测试点
5 软件安装
- 安卓:各个手机厂商有不同的应用市场,要分别上线,如小米,华为,vivo,OPPO,魅族等,除此之外还可能是扫码安装,浏览器安装,百度,360安装等,看公司对那些应用市场进行上传;
- iOS:下载通道有App Store,iTunes,testfligt,也可扫码安装;
6 购买测试
- Android:微信、谷歌支付
- iOS:沙盒账号
7 手机特性
- 不同的返回机制。Android虚拟按键返回,iOS左滑返回
8 iOS系统比安卓系统流畅的原因
- iOS对屏幕反应的优先级是最高的,它的响应顺序依次为Touch--Media--Service--Core架构,换句话说当用户只要触摸接触了屏幕之后,系统就会最优先去处理屏幕显示(Touch这个层级);
- 而Android系统的优先级响应层级则是Application--Framework--Library--Kernal架构,和显示相关的图形图像处理这一部分属于Library,可以看到到第三位才是它,当触摸屏幕之后Android系统首先会激活应用,框架然后才是屏幕最后是核心架构。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了