主题 : 讨论开发过程中到底是使用真机还是模拟器进行调试? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 121713
精华: 0
发帖: 32
金钱: 180 两
威望: 36 点
贡献值: 0 点
综合积分: 64 分
注册时间: 2015-12-24
最后登录: 2016-12-22
楼主  发表于: 2016-01-13 16:11

 讨论开发过程中到底是使用真机还是模拟器进行调试?


我个人觉得,用最简单的语言描述,模拟器就是用最少的钱,提供一小部分服务。
但这是以牺牲性能为代价的,全方位的性能下降,而且能做的东西很少。
很多时候你在模拟器上调好了一切,感觉没有问题了,到了真机上就会出现各种莫名其妙的bug,让你措手不及
所以做安卓开发最好用真机
具体原因:
Android的碎片化,导致虚拟机和三星、华为等终端机器存在一定区别
Android的模拟器本身优化不是很好,运行起来很慢,真的非常慢
Android的模拟器的sys-img要下载下来要么麻烦,要么死慢
对于摄像头,gps,传感器等硬件方面的开发,真机测试优点显著
但是真机也有一个问题,一些创业公司或者中小企业没有那么多资本去建机型库,顶多有几台主流机,但想要做一款成功的APP这是远远不够的,要完成app测试需要的机型成本是很庞大的,所以建议现在可以使用Testbird云手机进行远程调试,省下大量的购机成本,而且一样的是真机,同样的效果。
  当然,真机调试还是模拟器调试主要还是看方便程度,不同需求下的选择可能就不一样了,比如我想适配最新的android 6.0的系统,但是真机的系统可能没这么及时更新,就不得不利用模拟机器了。
对于模拟器的话推荐使用genymotion,速度比较快,也有免费版本的。genymotion模拟器快是因为它是基于x86架构的,如果你的应用中用到了so,但没有x86架构的so,只能放弃使用它,Android Studio的模拟器也一样;