一、从功能上区分
1)物理按键
Android:独有3个物理按键 功能(菜单、主页面、返回),尤其是返回键,是一定要测试的功能点
iOS:所有的返回上一层,只能靠页面功能实现
2)安装
- 生产环境:
Android:可以通过各个手机自带的应用市场或者是第三方的手机助手进行下载
iOS:APP store和iTunes
- 测试环境:
Android:开发或者测试将源码打包成apk文件,即可随意安装
iOS:可以使用Apple官方平台的testflight,或者开发直接给你安装好
3)系统兼容性
- 系统兼容性:
Android:版本居多,还有不同手机型号的定制版系统
iOS:版本相比较Android偏少
- 分辨率兼容性:
Android:分辨率多大20多种
iOS:相比较Android偏少
4)原生技术支持
Android:以微信举例,长按删除,置顶聊天等操作,左滑则会进入到通讯录菜单
iOS:以微信举例,长按没有任何反应,左滑则会出现标记未读和删除操作
5)支付方式
Android:对于一些有内购功能的APP,Android是直接调用第三方支付渠道
iOS:需要先在你的APP store里绑定你的支付方式,然后通过APP store 去完成支付操作
PS:Apple对于一些非官方的支付渠道是不允许上架的
二、从系统底层上区分
1)运行机制
Android:虚拟机运行机制
1、所有的应用程序都是运行在虚拟机中,用户界面其实是由虚拟机传递的,并且通过虚拟机,Android的任何程序都可以轻松访问其他程序文件
2、所有的Android的应用程序都是运行在RAM里面的,所以会发现有时候Android用着用着就开始有点卡了
PS:补充知识,手机汇总的RAM和ROM,可以分别对应电脑的内存和硬盘这么理解
iOS:沙盒运行机制
1、每个程序都有自己的虚拟地址空间,所以,程序之间都不能够进行访问
2、默认只会将应用的最后运行数据,记录在RAM里面
2)程序后台运行机制
Android:任何程序都可以在系统后台运行
iOS:第三方程序不能在系统后台运行
3)消息推送渠道
Android:可以使用第三方或自建平台进行消息推送,但是一般都是用第三方的
iOS:消息推送渠道有苹果官方提供的
4)页面渲染机制
Android:系统的优先级响应层级为:Application-->Framework-->Library-->Kernal,而Android系统的图像处理这部分功能属于Library层的
所以,当你当你触摸屏幕之后Android系统首先会激活application应用,然后是framework框架,然后才是Library屏幕,最后是Kernal核心架构
iOS:系统的优先级响应层级为:Touch-->Media-->Service-->Core,而IOS系统的图像处理这部分功能是属于Touch层的。
所以,当你触摸了屏幕之后,系统就会最优先去处理Touch层,然后才是Media媒体,Service服务以及核心Core。
5)系统的开源
Android:系统开源,有非常多的第三方测试工具可以辅助测试
iOS:系统非开源,严重依赖mac环境
原文链接:https://mp.weixin.qq.com/s/CZKlg3vKLBpzwBF4gORDwA