为什么Android App质量效应1 卡顿不高并且卡顿崩溃

为什么Android运存比iOS高那么多却更卡顿? - 业界 - 科技讯
为什么Android运存比iOS高那么多却更卡顿?
  其实现在安卓旗舰也不卡顿,你不要安装一些乱七八糟的APP就好。其实安卓卡顿其实主要是指打开关闭APP慢,点一下半天反应。其实这里面有多方面的原因,系统优化是一方面,硬件性能是一方面,APP的质量是一方面。在我看来APP第一,优化第二,硬件性能第三。   举个例子,假如手机的RAM是一间教室,APP就是里面的学生,房子的大小就是RAM的大小也就是硬件性能。假如教室里有20个学生,房间也足够大,但是没有老师管,有些人本不应该他活动的结果也到处乱跑,甚至有些人还偷偷带一些人进来,这就导致教室里的人拥挤混乱不堪,实际可用空间并不多。这种是优化差的情况。   同样一个教室,也是这么多人。但是老师给这些人都排好位置,不让他们乱跑。让谁出来发言说才能讲话。但是这些人在进来的时候获得很多特权。时间久了,这些人都混熟了,当台上有人讲话的时候他们就在下面搞小动作。老师让他们出去,但是他们又会偷偷溜进来继续捣乱。这种是目前最普遍情况。   有些厂家优化的比较好,这种情况也有所缓解。对于APP后台自动下载安装APP的情况,最好的解决办法是禁止安装未知来源的应用,只允许安装官方应用商店里的APP。这样即使在后台偷偷下载了APP也没有办法安装。小编现在使用的iPhone 7是全民手机秒杀的微信公众号上,花十几块钱秒到的,已经使用了一个月了,感觉很不错。想换机的朋友不妨关注一下。
换一换
12-15 15:00
12-15 12:00
12-15 11:04
12-15 11:00
12-15 10:00
12-12 12:08
12-04 11:07
11-30 15:21
11-30 14:36
11-29 17:26
12-16 10:34
12-16 10:28
12-16 10:18
12-15 19:52
12-15 19:47
12-15 19:42
12-15 19:37
12-15 19:33
12-15 19:28
12-15 19:14
12-15 19:08
12-15 18:56
12-15 18:50
12-15 17:23
12-15 17:03
12-15 16:45
12-15 16:22
12-15 15:56
12-15 15:21
12-15 15:06
12-15 14:59
12-15 14:54
12-15 14:35
12-15 14:24
12-15 13:57
12-15 13:43
12-15 12:08
12-15 11:19
12-15 11:04
12-15 10:58
& 科技讯版权所有从iOS、Android&APP&developer&的角度分析为什么安卓手机越用越卡,是否Android就不如i
1、为什么安卓手机会越用越卡?
因为某种原因,大陆无法正常使用Google服务,安卓APP为了实现消息推送功能,APP必须在后台使用service(服务)进程不断和后台服务器通讯,这些APP就算用户已经在后台关闭,service还是在后台保持运行状态(看看微信),微信在后台使用了一个service,两个进程,占用83M内存,使用时间1分钟26秒,CPU使用没有显示。随着用户使用时间的增长,装的APP越多,这些service也就越多,这些service就像牛皮癣、寄生虫、僵尸一样在后台(除非系统资源紧张被收回)不断吞噬手机内存、CPU,消耗电量,偷走流量,这就是安卓手机不管内存多大,CPU多强,也会越用越卡,电量总是不够用,流量没到月底就用完,刚刚清理完不久资源就被占用的根本原因。
怎么办?办法只有一个,不需要消息推送的APP到设置--》应用程序--》正在运行--》找到这些service,停止掉这些service,或者直接暴力强制停止运行,每打开关闭APP都要重复这个动作。有些流氓APP,就算你手动kill掉这些service,这些service也会由其他APP启动,对付这些流氓方法只有一个,就是把它从你手机里清除掉。
手机生产商为了体现差异性、显现个性,都会把原生的Android系统改头换面,使用各种炫耀的视觉效果吸引用户,这是以牺牲系统性能为代价的效果,这也是手机卡顿的原因之一。如果功力不够,优化的不好,问题就更严重。
2、Google的努力。
Google在2013年推出的Android4.4抛弃了导致Android卡顿的虚拟机,引入全新的ART(Android
run time),系统性能大幅提高。Android4.4之前,用户打开APP的流程是启动APP
--&虚拟机(APP加工厂编译apk) --》APP运行,4.4 ART
模式下,用户安装APP时就提前把APP编译放到系统,用户启动APP就不需要经过虚拟机的加工,直接运行。ART模式在2014年的Android
5.0正式推出。2016 Android7.0 又对ART模式进行了升级改造,Android性能更加突出。因为手机商需要时间对原生Android系统换肤,所以现在市面上大多手机运行的都是2014年推出的5.0版本,按照这种速度,国内的用户要体验7.0至少要等到2017年底,除非购买Google手机nexus。
3、是不是Android就不如iOS?
iOS因为能使用apple的服务,消息推送都是经过apple推送,没有类似Android的service处理消息推送,iOS不是真正意义上的多任务后台,也不允许在后台允许service(除了一些系统服务),APP退到后台就被挂起,和多任务的Android没有可比性,所以iOS对硬件的要求相对较低。iOS每推出一个大的版本就对硬件提高了要求,对于iOS版本更新,网上有这样一句话“修复了老机型过度流畅的bug”。Android
5.0之后不像iOS那样提高了硬件的要求,在同等硬件条件下甚至更加流畅了(nexus)。在我看来Android
7.0(原生)已经追赶上iOS甚至超过,国内的Android系统是一个妥协的产物,所以不要在说Android不好了,Google不给力了。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Android 不好用,都是因为这几点原因_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Android 不好用,都是因为这几点原因
&&Android 不好用,都是因为这几点原因
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩2页未读,
定制HR最喜欢的简历
你可能喜欢  &一个应用程序的性能问题体现在很多方面,app的性能问题,很大程度上决定了使用app的用户量,如果正在使用app的过程中出现app崩溃、卡顿半天加载不出数据(跟网络也有一定的关系)、用户请求事件半天获取不到相应的数据,则用户的内心都崩溃了,前期的性能问题导致的用户流失,从而降低品牌口碑使CPA(每用户获取成本)提高,因此作为测试人员,我们有义不容辞的责任在早期尽量多的爆出app性能问题,检测性能问题的方式:1、凭个人直观感受,下面将大概列举了几类,2、使用性能测试工具,如:腾讯的gt、腾讯的wetest(wetest主打测试游戏的性能,但是也可测试一般应用的性能,使用:客户端性能测试---通用性能测试,可得到具体的测试报告,包括cpu占用率、pss、fps等等),性能问题不达标及时督促研发进行性能优化,更好的提升app的性能,不过值得注意的是,不是所有的性能问题都是必须进行优化的,应根据实际情况评估是否需要优化,比如:不成熟的优化更容易带来伤害,实现上的问题可以通过后期的修改进行优化,遍布全局并且限制性结构上的缺陷是不容易被修改的,除非重构,因此作为开发应该在开始时就注重代码结构的设计。
  一、作为测试人员, 以下是凭个人直观感受就可以来判定app的性能问题包括:
    1、应用程序第一次启动速度慢
    2、进入到某一个界面加载速度慢
    3、启动某一个有动画效果的界面,动画执行过程加载速度慢并且有卡顿
    4、Listview列表滑动的过程中有卡顿、不流畅
    5、应用程序自定义的某特定界面执行速度慢
    6、如launcher应用界面左右滑动时效果不平滑,出现较慢的卡顿
    7、响应某一个用户事件时,长时间无响应(ANR)
    8、操作数据库时,执行大量数据的增删改查操作,执行速度较慢
    9、应用长时间后台运行后,随机出现卡顿现象
    10、太占用手机内存
    11、太耗电和流量
    12、在使用应用的过程中,点击某一个事件进入的页面出现白屏的闪动等
  二、作为测试人员,即使我们不懂代码,也不太清楚开发的代码结构是如何,具体到参数的给定、方法的调用、内存的分配等等,不懂这些也没有关系,
   & & &但是我们应该了解app出现了性能问题,我们可以从哪些方面可以着手进行分析,从而提升我们对性能问题的定位,开发可考虑点列举如下:
    1、分析有哪些函数单次执行时间长
    2、分析哪些函数单次调用次数过多
    3、分析哪些函数总执行时间长
    4)查看某些特定类的特定方法
  三、应用层的性能优化通常可以从以下几个方面考虑: 
    1. 了解编程语言的编译原理,使用高效编码方式从语法上提高程序性能;
    2. 采用合理的数据结构和算法提高程序性能,这往往是决定程序性能的关键;
    3. 重视界面布局优化,
    4. 采用多线程、缓存数据、延迟加载、提前加载等手段,解决严重的性能瓶颈;
    5. 合理配置堆内存使用上限和使用率,减少垃圾回收频率;
    6. 合理使用native代码;
    7. 合理配置数据库缓存类型和优化SQL语句加快读取速度,使用事务加快写入速度;
    8. 使用工具分析性能问题,找出性能瓶颈;
决定程序整体性能的仍然取决于程序的业务逻辑设计、代码的数据结构和算法
阅读(...) 评论()合作账号登录:
安卓手机卡顿是有原因的,Android垃圾回收机制是根源!来源:10000知道作者:溪水阅读为什么那么多人喜欢苹果多于安卓了?其实,和苹果手机比较的时候,安卓手机卡顿是永远的痛,根源在于系统!这也是苹果与安卓最大的区别!安卓手机用户可能最大的感触就是用久了会很卡;然而苹果手机却不会出现这种现象,这也是国人为什么那么喜欢苹果的原因。很多人发现自己安卓手机的配置是超神级别的,可还是感觉苹果手机使用更加流畅。其实这一切都是有原因的。 官方解析是安卓系统是谷歌在Linux系统的基础上开发的一款移动,而安卓系统的则是在运行在一个基于Linux系统内核之上的虚拟机之中。简单理解就是Linux系统开发的android系统,然后android系统的应用程序运行在Linux虚拟机上。而这个Linux虚拟机是谷歌开发的Java虚拟机,使用Java语言进行编码的。Java的跨平台性和兼容性非常好,但是Java的垃圾内存应用机制却成了移动设备上的局限。说到垃圾回收机制,Android系统是用java语言编写的,那么java提供了自动的GC机制,系统会经常检查内存,采用对象引用计数的方式!所以寻根到底是GC机制问题。 什么是GC机制?GC(Garbage Collection),是垃圾回收的意思,在程序开发的时候内存处理器是很容易出现问题的,忘记内存回收、错误内存回收都会导致应用程序崩溃,比如,你打开N多个安卓手机app,当使用达到内存分配时,系统就会弹出一个显示&程序无法响应,请手动关闭&这样的框。 Java语言的GC功能是自动检测对象是否超过作用域,从而达到自动回收内存和垃圾回收的目的。然而java语言并没有提供释放已分配内存的显示操作方法,导致编程不能准确地控制垃圾回收的时间。 什么是具体的Java内存垃圾回收原理?(有点复杂,小白可忽略)Java的内存管理其实就是对象的管理,其中包括对像的分配和释放,对于编码来说,分配对象使用new关键字,释放对象时只是将对象赋值为null,让对象为空就不能够再访问到这个对象或者说这个对象没有任何的值了,那么该对象被称为&不可达&。GC将负责回收所有&不可达&对象的内存空间。所以GC当创建新的对象时,GC就把对象地址、大小和使用情况都跟踪了一遍。是的,都跟踪了一遍,确实很浪费内存垃圾的出现。java规范对GC的很多行为都没有进行严格的规定。例如采用什么类型的回收算法、什么时候进行回收等问题都没有行业内的规定!Ps:什么是对象?你可以简单这么理解。人就是一个&对象&,衣服,个性,姓名这些就是对象的属性。(小白可以忽略不看) 所以编码人员对于GC机制时都会有优化!比如减少GC开销的措施:(1)少用 System.gc()(2)对象使用完后,设置为指向null(设置为空)(3)尽量少使用static变量。static 全局变量无法回收该内存 (4)StringBuffer比String好。String是字符串的意思Ps:比如&中国电信&、&123456&等等就是字符串。String每赋值一次,就会重新分配一次内存,以此类推,总是这样的话就会导致内存分配过多了。(5)能够用int等基本数据类型,就尽量不要使用Integer等引用类型。Ps:int和Integer都是代表整数,比如1,2,3等1.2就是小数了。 简单理解什么是GC?其实简单的理解就是系统中有一个特定的规则是来回收内存和垃圾的,当系统存在低于某个值时,会自动选择性的关闭程序。有的程序会设置常驻内存之中,下次打开直接从内存中读取显示,这加快了打开速度。但是当运行大型软件或者很多软件时,就会内存不足而自动选择性关闭应用。然而总是着这样频繁访问读取内存,安卓手机用久了,就会卡顿了。 为什么苹果手机不会卡呢?苹果手机的iOS系统其实没有所谓的垃圾回收机制,它和Mac系统类似,把内存分为自由(Free)、活跃(active)、空闲(inactive)、固定(wired)四个类型,然而这四种状态根据系统需要相互转化。比如当点击Home键返回桌面时,程序会被暂停,不会再运行。当需要打开是直接转化恢复。 对于苹果系统来说,系统优化和关后台是不需要的操作,清理效果、系统内存自我管理都是更加优化的。所以并没有安卓手机的卡顿问题,除非苹果手机的IOS版本更新增大了系统的内存,才会导致苹果手机的卡顿,比如用Iphone4手机更新IOS 10版本,也会出现手机不流畅的。所以,其实安卓手机的GC垃圾回收机制的出现,就注定把安卓系统带到一个局限去了。无论安卓版本如何的更新换代,还是会导致内存不够的发生。 &&&拓展阅读&&&
感谢您的建议,
我们会尽快给您解决方案!
您的订单已提交,
两个工作日有专门人员与您联系!
你可能感兴趣
全部评论()
您需要登录后才可以发帖
对于固态硬盘(SSD)的选择,还是有一些误区大家可能不知道的,今天小编就给大家科普科普吧!
使用您的10000知道账号登录
用户名:密&&&码:
*手机号码:
&&&*用户名:
&&&&&*密码:
*短信验证码:
友情链接:
本网站部分内容来源于网友上传及媒体投稿、合作等,不代表本网观点及立场,若上传内容侵犯了您的知识产权请立即联系我们删除或断开链接。
[增值电信业务经营许可证 A2.B1.B2-]&ICP 证号:京 ICP 备 号
正在提交中,请稍候...
您的反馈信息已记录,如获得更友好服务请登录
分享到微信朋友圈
打开微信,点击底部的“发现”,使用“扫一扫”即可将网页分享至朋友圈。}

我要回帖

更多关于 卡顿 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信