免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: shenlanyouyu
打印 上一主题 下一主题

Android手机越用越卡,谁惹的祸? [复制链接]

论坛徽章:
62
洛杉矶湖人
日期:2015-02-10 09:56:11黑曼巴
日期:2016-06-28 17:41:282015-2016NBA季后赛纪念章
日期:2016-06-28 17:41:282016猴年福章徽章
日期:2016-02-18 15:30:34圣安东尼奥马刺
日期:2015-05-04 22:46:00菠菜神灯
日期:2015-05-04 22:35:07新奥尔良黄蜂
日期:2015-03-17 13:54:52明尼苏达森林狼
日期:2015-03-16 21:51:15萨克拉门托国王
日期:2015-03-02 16:10:58华盛顿奇才
日期:2015-03-02 16:10:58迈阿密热火
日期:2015-03-02 16:10:582016科比退役纪念章
日期:2016-06-28 17:41:28
21 [报告]
发表于 2015-12-04 11:29 |只看该作者
流氓软件太多了。。。

同问4楼圣斗士。。。

论坛徽章:
48
15-16赛季CBA联赛之青岛
日期:2021-01-07 13:41:2315-16赛季CBA联赛之上海
日期:2020-12-01 18:02:0720周年集字徽章-20	
日期:2020-10-28 14:14:2620周年集字徽章-20	
日期:2020-10-28 14:04:3015-16赛季CBA联赛之天津
日期:2020-10-18 22:51:412016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之北控
日期:2015-12-22 13:30:48操作系统版块每日发帖之星
日期:2015-12-07 06:20:00操作系统版块每日发帖之星
日期:2015-09-04 06:20:002015亚冠之德黑兰石油
日期:2015-08-05 18:46:082015年亚洲杯之巴勒斯坦
日期:2015-04-19 10:42:502015年亚洲杯之巴林
日期:2015-04-09 08:03:23
22 [报告]
发表于 2015-12-04 13:42 |只看该作者
1、我们都知道Android APP主流开发语言是Java。在开发APP时,利用哪些Java的语言特性,采取什么措施可以提高程序的运行效率?        
提高程序的运行效率,得先清楚是硬件资源不够(CPU、内存、网络带宽等等)还是代码问题。很多Java程序性能的问题大多是程序本身造成的。所以良好的代码编写习惯很重要,正确、适当的运用java.util.Vector类和java.lang.String类,能提高程序的性能。尽量重用对象,可以节省系统花时间生成对象和回收处理;尽可能使用局部变量,在调用方法时传递的参数和创建的临时变量都保存在栈(Stack)中,速度较快;JVM有自己的垃圾回收机制(GC),这方面一定程度上减轻了开发者的负担,但有些人不注意这个GC的条件是对象不再被引用而过多的创建或引用对象,这些会消耗系统大量内存,严重的会导致内存泄漏,所以对象使用完后最好检查有没有引用和手工置成null。尽量使用ArrayList和HashMap,不得已的情况下不推荐使用Vector和HashTable,后者会使用同步机制,无疑导致额外的性能开销。

2、你对Java语言的看法,大胆预测未来Java语言的发展趋势和方向。
Java的跨平台特性无疑是.Net目前无法比拟的,不过它还是比较适合应用层面或网络的高层方面,如果涉及底层和硬件层面就不行了。术业有专攻,Java在自己擅长的领域深耕发展也不错;和其他相辅想成完成项目就行了。

3、你使用Java语言开发过Android APP吗?分享你在Java语言学习和Android APP开发的经验。
还没有具体的项目,目前也仅是有过一些支持Java相关的工作经验和自己学习,可以分享下自己的这方面东西。前一段时间测试个Java相关程序的内存泄漏问题,发现分析起来还是比较困难;heap也基本没有内存泄漏问题,不过发现有个class创建的对象有增无减,而javaw.exe进程持续有I/O(大于400K),开始以为是Java 7的问题(因为使用Java 8跑这个程序没有问题);换了不同的测试环境最后发现竟然和Windows OS版本有关系,虽然都是Win 7,但公司IT提供的image还有不同的小版本号,最后换了最新的OS版本竟然没事了。至于Android的应用自己在手机上也用过不少,发现有些软件越来越大(你看看自己手机上微信的占用空间),很多都在后台调用各种小动作(支付宝在你不用手机的时候也会不时调用手机摄像头,每次启动app的时候都会定位读取你的位置或手机的IMEI码),而安装软件的时候基本有后台服务在启用,如果你手机内存小(1G)很快你就会觉得慢。说到底,还是Android APP的生态环境就搞得乌烟瘴气,等某天谷歌开始收权了势必会整顿市场。学Java是有好处的,现在大数据分析的就有不少招聘会Java的。

论坛徽章:
2
2015年亚洲杯之乌兹别克斯坦
日期:2015-04-25 17:31:122015亚冠之山东鲁能
日期:2015-08-04 14:01:11
23 [报告]
发表于 2015-12-07 13:36 |只看该作者
其它的不是很懂,学的不是java。不过至少很重要的一个原因就是流氓软件太多,比如,一些软件商,为了达到宣传的目的,将很多不管相关不相关的功能都往自己最出名的应用里放,而不肯做成几个应用,有些功能,不管我用不用得到,它都得占用我的资源,还有就是该退出的时候不真正退出,继续后台运行。

我认为提高app效率关键不在于使用什么编程技巧,认真朴实地写程序就行,效率更多的交给底层的工程师们来干,关键在于真正为用户考虑的太少。

论坛徽章:
6
金牛座
日期:2015-09-22 17:38:01亥猪
日期:2015-09-28 16:18:152015亚冠之胡齐斯坦钢铁
日期:2015-09-30 11:44:0115-16赛季CBA联赛之四川
日期:2015-12-10 17:35:5515-16赛季CBA联赛之八一
日期:2016-06-14 10:48:10shanzhi
日期:2016-06-17 17:59:31
24 [报告]
发表于 2015-12-07 14:49 |只看该作者
自己的愚见:国产的APP后台都无法彻底关闭,一但开机,就会有大量的软件自启,导致运行内存被占满,有些后台程序会占用大量CPU,而且会导致手机发热,如果用安全软件禁用后台,也只能停止一些不顽固的后台软件,并且,安全软件也是占用后台的一大隐患,有些低配置的手机,装上安全软件,就会变的异常缓慢,现在就算手机升级到了4G RAM,依旧在系统启动时,剩余内存最多还有1G,只要剩余运行内存低于1G,就会变卡,除非原生安卓,占用可能较少,目前手机的UI,升级占用越来越大,反而系统版本越低越流畅,高版本直接对应高配置手机,如果再有更高的版本系统,现在的手机也将变得卡顿,被淘汰。

论坛徽章:
0
25 [报告]
发表于 2015-12-07 22:35 |只看该作者
不错不错

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2015-06-20 22:20:00
26 [报告]
发表于 2015-12-08 15:46 |只看该作者
本帖最后由 crykun 于 2015-12-08 15:51 编辑

我就一小白,学习android程序开发2个月,画个界面,从网上拉json格式数据,用于同事间数据交换,居然也做了一个小应用。安全管家,什么的,一键清理,要好几次才能清掉我做的安卓应用。天啊,我没做什么啊。就把数据弄到ListView列表中啊。退出按钮我也做了,再说,其它的我也不懂啊。我安卓程序是做得不好,但死活退不出,占用资源,我想,这绝不能怪我。

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-10-11 06:20:0015-16赛季CBA联赛之山东
日期:2016-05-28 18:18:5615-16赛季CBA联赛之新疆
日期:2017-04-12 22:55:4715-16赛季CBA联赛之青岛
日期:2017-06-26 18:30:0315-16赛季CBA联赛之四川
日期:2017-09-04 12:27:0315-16赛季CBA联赛之福建
日期:2018-02-09 14:28:3315-16赛季CBA联赛之同曦
日期:2018-04-17 12:43:3415-16赛季CBA联赛之浙江
日期:2018-07-14 13:27:4015-16赛季CBA联赛之吉林
日期:2018-09-13 15:48:2915-16赛季CBA联赛之新疆
日期:2016-05-07 05:05:3215-16赛季CBA联赛之八一
日期:2016-03-14 12:32:06程序设计版块每日发帖之星
日期:2015-12-12 06:20:00
27 [报告]
发表于 2015-12-09 03:02 |只看该作者
手机的内存管理机制可以参考下linux

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-10-11 06:20:0015-16赛季CBA联赛之山东
日期:2016-05-28 18:18:5615-16赛季CBA联赛之新疆
日期:2017-04-12 22:55:4715-16赛季CBA联赛之青岛
日期:2017-06-26 18:30:0315-16赛季CBA联赛之四川
日期:2017-09-04 12:27:0315-16赛季CBA联赛之福建
日期:2018-02-09 14:28:3315-16赛季CBA联赛之同曦
日期:2018-04-17 12:43:3415-16赛季CBA联赛之浙江
日期:2018-07-14 13:27:4015-16赛季CBA联赛之吉林
日期:2018-09-13 15:48:2915-16赛季CBA联赛之新疆
日期:2016-05-07 05:05:3215-16赛季CBA联赛之八一
日期:2016-03-14 12:32:06程序设计版块每日发帖之星
日期:2015-12-12 06:20:00
28 [报告]
发表于 2015-12-09 03:07 |只看该作者
软件太过于臃肿,一个软件80%的功能是没用的,这些功能可以自定义,安装的时候选什么选什么,就像linux源码编译安装一样,我要什么就加什么参数编译什么模块。这些效率也高,软件运行也流畅,不会太过于臃肿。

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-10-11 06:20:0015-16赛季CBA联赛之山东
日期:2016-05-28 18:18:5615-16赛季CBA联赛之新疆
日期:2017-04-12 22:55:4715-16赛季CBA联赛之青岛
日期:2017-06-26 18:30:0315-16赛季CBA联赛之四川
日期:2017-09-04 12:27:0315-16赛季CBA联赛之福建
日期:2018-02-09 14:28:3315-16赛季CBA联赛之同曦
日期:2018-04-17 12:43:3415-16赛季CBA联赛之浙江
日期:2018-07-14 13:27:4015-16赛季CBA联赛之吉林
日期:2018-09-13 15:48:2915-16赛季CBA联赛之新疆
日期:2016-05-07 05:05:3215-16赛季CBA联赛之八一
日期:2016-03-14 12:32:06程序设计版块每日发帖之星
日期:2015-12-12 06:20:00
29 [报告]
发表于 2015-12-09 03:07 |只看该作者
软件太过于臃肿,一个软件80%的功能是没用的,这些功能可以自定义,安装的时候选什么选什么,就像linux源码编译安装一样,我要什么就加什么参数编译什么模块。这些效率也高,软件运行也流畅,不会太过于臃肿。

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-10-11 06:20:0015-16赛季CBA联赛之山东
日期:2016-05-28 18:18:5615-16赛季CBA联赛之新疆
日期:2017-04-12 22:55:4715-16赛季CBA联赛之青岛
日期:2017-06-26 18:30:0315-16赛季CBA联赛之四川
日期:2017-09-04 12:27:0315-16赛季CBA联赛之福建
日期:2018-02-09 14:28:3315-16赛季CBA联赛之同曦
日期:2018-04-17 12:43:3415-16赛季CBA联赛之浙江
日期:2018-07-14 13:27:4015-16赛季CBA联赛之吉林
日期:2018-09-13 15:48:2915-16赛季CBA联赛之新疆
日期:2016-05-07 05:05:3215-16赛季CBA联赛之八一
日期:2016-03-14 12:32:06程序设计版块每日发帖之星
日期:2015-12-12 06:20:00
30 [报告]
发表于 2015-12-09 03:08 |只看该作者
软件太过于臃肿,一个软件80%的功能是没用的,这些功能可以自定义,安装的时候选什么选什么,就像linux源码编译安装一样,我要什么就加什么参数编译什么模块。这些效率也高,软件运行也流畅,不会太过于臃肿。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP