位置: 编程技术 - 正文

Android优化(Android优化蓝牙)

编辑:rootadmin

推荐整理分享Android优化(Android优化蓝牙),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Android优化软件 知乎,Android优化大师,Android优化耗电,Android优化蓝牙,Android优化调频,Android优化调频,Android优化蓝牙,Android优化蓝牙,内容如对您有帮助,希望把文章链接给更多的朋友!

摘要:Android应用优化主要集中在内存和UI流畅度上,从内存占用与泄露、UI流畅度的帧数和响应时间到IO的阻塞式响应时间等,腾讯移动性能评测专家叶方正在本文中结合实战经验全方位剖析Android应用性能评测与调优。

什么样的应用才能称得上是优雅的App?这是腾讯内部一直在思考的问题,优雅的App就是把简单的事情做到极致,必须对终端应用性能进行打磨。在Android应用优化方面,主要包括内存和UI流畅度的问题,比如内存占用与泄露,UI流畅度的帧数和响应时间,IO的阻塞式响应时间等。

内存优化

首先,为什么要优化内存?主要体现在OOM(Out of Memory)和导致UI不流畅上。对于手机来说,内存是一个非常稀缺的资源,即使是现在普遍拥有着很大内存的Android手机也不可避免,对此,测试人员应从编译代码、选定测试场景、测试场景转换成用例、跑起工具Run用例入手,并结合代码深度分析,来进行内存测试。

目前,Android的内存问题主要包括DDMS、MAT和android.os.Debug三个方面:

DDMS

Heap

如果data object超过M便会出现问题,但由于现在人们的手机在无限增大,其上限各有不同,有M、M的,所以必须要逐步控制object的大小。

Allocation Tracker

上图显示了在这段时间内Java虚拟机申请的所有内存的状况,有些可能是打转过程占用内存。最简单的方法就是先检测,然后按照大小进行排列。在优化Android内存时,通常会碰到这样四个问题:万恶的Static通常见到在单例模式、多线程生命周期长过hold住本该释放资源、大胖子Bitmap、Cursor。

Android优化(Android优化蓝牙)

Memory Analyzer(MAT)

Leak Suspects:内存泄露报告Top Components:吃货报告Histogram:每个Class占用内存Dominator Tree:列出哪些对象占用内存最多以及谁hold住这些对象UI流畅度

在Android 2.2时,很多开发者都拿着Android手机使用或开发,但还是会买一部iPhone,因为觉得iPhone手机比较顺滑。我们一直在想怎样解决Android应用各种卡顿现象。一个是主线程干的活太多,没时间来响应用户操作,还有就是其他人都在等着你干活,还有非常容易被忽略的不太合理的UI绘制方式。另外,有一些UI特效,实现方式有很多种,最简单的方式就是贴图,让美工画一张比较漂亮的图贴上去,这是最简单的,却也最耗时,其实Android本身提供了很多更为高效的绘制方式。

如何定位UI流畅度问题?归根结底还得用数据来说话。Android提供的Method Profile可以解决这个问题,此外,还有非常古老的运用切片式编程理念的Aspectj插桩,能够将代码片段按照一定的规则切成一片一片的,由此来让测试人员找出问题点所在。还有就是GT,它是一个很神奇的工具。

有了以上工具还必须寻找缺陷方法、获取找到缺陷点的响应时间。要想解决UI流畅度问题,首先要了解一个UI画出来大概是怎样的过程,从读取XML(inflate)、计算大小(measure)、布局坐标计算(layout)到绘制到屏幕(draw),每一步都需要花费较长时间。

就拿测试FPS来说,市面上很早就有了测试FPS的工具,但它的输入是依赖于开发者的输入,如果在操作上手快或慢一点,帧率便会不同,在优化过程中便会发现有的时候响应时间很短,但在帧率上并没有发生很大变化。在研究Android自身刷新的绘制机制时,我们发现Google在更新Android 4.1时有了一个很重要的名为“黄牛工程”的工程,其中“垂直同步”对测试流畅度非常有用。

Google为什么会更新这个过程?在绘制一个时间片时,很多时候并不是因为CPU或GPU性能不行而导致UI出现卡顿,而是因为前一帧没有绘完,下一帧就来了,造成一定的积累,而如果很快绘制完,中间便会空等,Google由此便引用了垂直同步这个机制。

但如果一个工具在绘制,另一个工具还没有空闲,这个时候便会产生跳帧,相当于一个垂直同步次/秒,也就是一个时间段毫秒,上一个时间段占用下一个时间段,根据这个机制,下一个时间段会将时间空出,这个时候测试人员便会在屏幕上看到第二帧,于是Google又引入了一个新东西,在引用垂直同步后,最高帧数就是帧。由此,在经过大量实验之后,推演到“丢帧”和“流畅度”,比如,应该在毫秒完成的工作却因各种原因没有做完,占了下n个毫秒的时间,就相当于丢了n帧,而当流畅度数&#;越小时,便说明程序越卡。

如何得到流畅度?通过注册一个回调就可以实现。使用GT可以边走边测边调试,仅用一部手机便能完成对被测产品的操作、关键参数的修改、关键指标的观测。而针对UI流畅度,腾讯做出了一个流畅度评估算法,利用数学模型来处理数据,将曲线变成一个单一数&#;,并按照场景进行归类。

那么,如何解决UI流畅度问题呢?主要有以下两项操作:

利用Method Profile采集CPU使用数据:将DDMS埋在代码中,或在代码中直接调用andriod.os.Debug下的方法:

转自:

android studio 1.2 安装配置教程(windows平台) AndroidStudio1.2版本算是比较稳定好用的版本,以下是基本配置安装教程,建议下载绿色版,更新时将最新的AndroidStudio文件包覆盖就行了,不用动sdk下载地

Android的冒烟测试(smoke test) 冒烟测试(android自带的monkey方法)就是反复不停的执行,反复不停的使用。测试方法如下图monkey乱点模拟器其中的应用次最后玩挂了一个应用

高仿微信新消息提示音功能 最近公司在做一个项目,有一个切换消息提示音的功能,可以切换本应用收到消息的提示音,而不影响系统提示音。我就按照微信的那个样式进行了编

标签: Android优化蓝牙

本文链接地址:https://www.jiuchutong.com/biancheng/384198.html 转载请保留说明!

上一篇:ListView大全(listview subitems)

下一篇:android studio 1.2 安装配置教程(windows平台)

  • 固定资产清理过程涉及的报表
  • 水利建设基金计费方式
  • 个人所得税的账务处理
  • 委托外单位研发的研发费用加计扣除最新政策
  • 应付中转是什么科目
  • 转让财产收入征税吗
  • 租赁的生产设备计入哪个科目
  • 委托加工模具的费用计入什么科目?
  • 产权交易所怎么赚钱
  • 政府补助计入资本公积是老准则吗
  • 社保证明缴费证明查询在哪查
  • 从个人出开进的房租租赁发票可以抵扣几个点?
  • 金税盘用途
  • 流转税税额
  • 加油发票的票据抬头是个人,这样可报销吗?
  • 股权转让的印花税是按照什么金额缴纳
  • 成本费用跨年度怎么计算
  • 外国常驻代表机构经费支出
  • 移动电子发票显示无法开具怎么获取发票
  • flash动画导出视频有水印吗
  • 如何预防电脑症候群的发生
  • 公司收到利息怎么记账
  • 收到财政局专项审计短信
  • 上年超额广告费会计分录
  • 社保是当月计提当月的吗
  • 事业单位工会会员费如何计算
  • 成品油的消费税可以抵扣吗
  • 桔梗的功效与作用吃法
  • 大型绿萝的养殖方法
  • 委托加工应税消费品以委托人为消费税的纳税义务人
  • 在php中提供了什么函数用于删除数组中的元素
  • 微信小程序商城源码php
  • php安装及使用教程
  • 最近爆火的抖音神曲
  • 进项税和销项税月末怎么结转
  • sqlserver2008误操作数据
  • 房地产业具体怎么做
  • 企业应交税金科目编码
  • 税收类型增值税有哪些
  • 增值税免税优惠梳理
  • 普通发票和增值税发票报销有什么区别?
  • 房产税和城镇土地使用税
  • 减免残保金相关政策
  • 记账凭证错误要重开吗
  • 进项税额转出再转入
  • 欠钱打官司后利息怎么算
  • 工程承建方给予什么赔偿
  • 一般纳税人购进税控设备如何抵扣
  • 企业所得税国税地税怎么分
  • 车子的上牌费要计入成本吗
  • sqlserver登录日志
  • windows开始菜单在哪里
  • win8系统安装的软件在哪里
  • bios怎么设置efi引导
  • mission controller
  • whagent.exe - whagent是什么进程
  • windows与xp的区别
  • 在xp系统中设置u盘启动
  • win10mobile还能用吗
  • windows10右键菜单
  • win10 Mobile 10586.36预览版更新了哪些内容?
  • win8自带软件哪些可以卸载
  • win8开机进入开始界面
  • cocos2dx游戏有哪些
  • cocos creator rpg
  • 接口回调java
  • vue项目简介
  • videoleap怎么加音频
  • python 父类方法
  • js立即执行函数作用
  • python二分法查找
  • 浅谈python
  • locust框架
  • 企业如何在网上申请缴税三方协议
  • 税务局通知自查该怎么办理
  • 税务稽查条例操作规程
  • 福建省国税局官网
  • 仓储物流企业的事故指标
  • 收购烟叶多少公斤违法
  • 在电脑上怎样做word的文档
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设