当前位置: 首页 > wzjs >正文

阿里云快速做网站目前最新推广平台

阿里云快速做网站,目前最新推广平台,网络营销的5种方式,jetpack wordpressAndroid性能优化实战指南 对新闻客户端APP的性能优化 1. 解决启动白屏问题 当系统加载并启动App时,需要耗费相应的时间,这样会造成用户会感觉到当点击App图标时会有"延迟"现象。Google的做法是在App创建的过程中,先展示一个空白…

Android性能优化实战指南

对新闻客户端APP的性能优化

1. 解决启动白屏问题

当系统加载并启动App时,需要耗费相应的时间,这样会造成用户会感觉到当点击App图标时会有"延迟"现象。Google的做法是在App创建的过程中,先展示一个空白页面,让用户体会到点击图标之后立马就有响应。

在Style里面配置:

<style name="AppTheme.Luncher"><item name="android:windowBackground">@drwaable/windows_bg</item><item name="android:windowFullscreen">true</item>
</style>

在manifest.xml中:

<activityandroid:name=".Mainactivity"android:theme="@style/Apptheme.luncher">

在Activity的onCreate改回原来的:

public class onCreate() {setTheme(R.style.AppTheme);
}

2. 启动耗时优化

在性能测试中存在启动时间2-5-8原则:

  • 当用户能够在2秒以内得到响应时,会感觉系统的响应很快;
  • 当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;
  • 当用户在5-8秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受;
  • 而当用户在超过8秒后仍然无法得到响应时,会感觉系统糟透了,或者认为系统已经失去响应。
2.1 优化前

优化之前启动耗时的最小值:

ThisTime : 3340 ms
TotalTime : 3340 ms
waitTime : 3413 ms
2.2 启动优化工具 CPU Profile/TraceView

如果发现显示时间比希望的时间长,则可以继续尝试识别启动过程中的瓶颈。查找瓶颈的一个好方法是使用Android Studio CPU性能剖析器。

2.3 优化点1 优化SharedPreference

SharedPreference涉及到在子线程进行XML读取,SP的定位就是保存简单轻量级的key value数据。

2.4 布局异步加载

LayoutInflater加载xml布局的过程会在主线程使用IO读取XML布局文件进行XML解析,再根据解析结果利用反射创建布局中的View/ViewGroup对象。Android为我们提供了Asynclayoutinflater把耗时的加载操作在异步线程中完成。

2.5 优化点2 新闻数据缓存异步加载

在fragment的onCreate的时候读取了缓存的数据和SP,占用了一定的时间,改为通过IdleHandler进行空闲时间异步加载。

2.6 代码优化

在DispatchMessage的onChange中耗费了700多的毫秒数,有两处调用了notifyDataSetChange,删除其中一个可以优化快300ms。

3. 卡顿优化

大多数用户感知到的卡顿等性能问题的最主要根源都是因为渲染性能。Android系统每隔大概16.6ms发出VSYNC信号,触发对UI进行渲染,如果每次渲染都成功,这样就能够达到流畅的画面所需要的60fps。

3.1 Systrace卡顿分析

Systrace是Android平台提供的一款工具,用于记录短期内的设备活动。该工具会生成一份报告,其中汇总了Android内核中的数据,例如CPU调度程序、磁盘活动和应用线程。

3.2 Trace API

Android提供了Trace API能够帮助我们记录收集自己应用中的一些信息:Trace.beginSection()与Trace.endSection()。

3.3 App层面监控卡顿

目前业界两种主流有效的app监控方式:

  1. 利用UI线程的Looper打印的日志匹配;
  2. 使用Choreographer.FrameCallback。

4. 过度渲染

过度绘制是指系统在渲染单个帧的过程中多次在屏幕上绘制某一个像素。GPU过度绘制检查可以通过开发者选项中的"调试GPU过度绘制"功能来识别。

5. 网络优化

网络请求需要经过的流程:

  1. DNS解析,请求DNS服务器,获取域名对应的IP地址;
  2. 与服务端建立连接,包括tcp三次握手,安全协议同步流程;
  3. 连接建立完成,发送和接收数据,解码数据。

优化点:

  • 直接使用IP地址,去除DNS解析步骤;
  • 复用连接或一直使用同一条连接(长连接);
  • 压缩数据,减小传输的数据大小。

6. Crash监控

Crash(应用崩溃)是由于代码异常而导致App非正常退出,导致应用程序无法继续使用,所有工作都停止的现象。在Android应用中发生的Crash有两种类型,Java层的Crash和Native层Crash。

6.1 Java Crash

Java的Crash监控非常简单,Java中的Thread定义了一个接口:UncaughtExceptionHandler;用于处理未捕获的异常导致线程的终止。

Native crash

相对于Java的Crash,NDK的错误无疑更加让人头疼。Linux信号机制是Linux进程间通信的一种重要方式,Linux信号一方面用于正常的进程间通信和同步,另一方面它还负责监控系统异常及中断。

BreakPad

Google breakpad是一个跨平台的崩溃转储和分析框架和工具集合。breakpad在Linux中的实现就是借助了Linux信号捕获机制实现的。

使用Keymob开发助手优化性能

在性能优化过程中,使用Keymob开发助手可以大大提高开发效率:

  1. 内存分析工具:Keymob提供强大的内存分析功能,帮助开发者快速定位内存泄漏问题
  2. 性能监控:实时监控应用的CPU、内存、网络等性能指标
  3. 代码优化建议:根据性能分析结果,Keymob会给出针对性的代码优化建议
  4. 自动化测试:Keymob支持自动化性能测试,可以模拟不同设备环境下的性能表现

通过结合Keymob开发助手的各项功能,开发者可以更系统化地进行性能优化工作,而不是仅仅依靠经验或手动调试。Keymob的智能分析功能能够帮助开发者快速定位性能瓶颈,并提供可行的优化方案。

总结

性能优化是一个持续的过程,需要开发者不断学习和实践。本文介绍的优化技巧结合Keymob开发助手的强大功能,可以帮助开发者构建更加流畅、高效的Android应用。记住,优化不是一蹴而就的,需要在开发过程中持续关注性能指标,及时发现问题并进行优化。

http://www.dtcms.com/wzjs/170675.html

相关文章:

  • 专业网站建设在哪里seo 排名 优化
  • 自己怎么建立微网站全网营销的公司
  • 电子商务平台经营者seo公司推荐
  • 做网站可以提些什么意见百度网站快速优化
  • 做搜索网站挣钱seo是什么意思广东话
  • wordpress主题 破解seo入门免费教程
  • 怎样做简单公司网站武汉做seo
  • 成都vi设计十强seo推广策划
  • 网页设计与网站建设课程总结宁波网站推广优化公司怎么样
  • 有经验的聊城网站建设品牌营销经典案例
  • 国外花型设计网站西安seo代理计费
  • 建设银行网站机构特点业务发展佛山网络公司 乐云seo
  • 兄弟们来个能看的企业网站设计优化公司
  • 国内专门做情侣的网站商城网页设计一般用什么软件
  • 自己做交友网站安年软文网
  • 网页建站如何投放网络广告
  • ps图做ppt模板下载网站有哪些网站应该如何推广
  • 最好看免费观看高清大全老师补课日漫陕西seo
  • 网站建设合同服务响应时间公司网站设计方案
  • 外贸购物网站开发哪个搜索引擎最好用
  • 网站备案是需要去哪里做seo排名技术软件
  • 外留网站建设百度2020新版下载
  • 深圳罗湖网站制作公司郑州网站推广方案
  • 青岛网站建设免费视频号视频怎么看下载链接
  • 网站建设素材模板下载推广普通话心得体会
  • 小馋网站建设书樱桃电视剧西瓜视频在线观看
  • 毕业视频代做网站公司seo是什么级别
  • 合肥网站建设pqiw2023今天的新闻联播
  • 知名高端网站设计企业百度热点排行榜
  • 企业做网站推广产品需要多少钱关键词自助优化