对于开发人员来说“性能优化”是再熟悉不过了,因为一个合格的APP操作是流畅的,性能是稳定的,所以开发人员的工作除了编写代码之外,就是检测分析APP的性能,然后找出原因,进而优化APP性能。另外,除了人为检测分析APP性能之外,还可以使用工具,更加精准快捷;比如说“友盟”这款工具,功能种类丰富,操作丝滑流畅,我个人使用的也正是友盟。那么接下来进入正文,我来给大家简单介绍下关于APP性能优化的几个方面,以及友盟的详细功能介绍!
一、优化APP性能的方法
1、在后台取消一些线程中的动作
我们知道App运行过程中所有的操作都默认在主线程(UI线程)中进行的,这样App的响应速度就会受到影响。会导致程序陷入卡顿、死掉甚至会发生系统错误。
为了加快响应速度,需要把费时的操作(比如网络请求、数据库操作或者复杂的计算)从主线程移动到一个单独的线程中。最高效的方式就是在类这一级完成这项操作,可以使用AsyncTask或者IntentService来创建后台操作。如果选择使用IntentService,它会在需要的时候启动起 来,然后通过一个工作线程来处理请求(Intent)。
使用IntentService时需要注意以下几点限制:
①这个类不要给UI传递信息,如果要向用户展示处理结果信息请用Activity;
②每次只能处理一个请求;
③每一个处理请求过程都不能中断。
2、保持响应不发生ANR
从UI线程中移除费时操作这个方式还可以防止用户操作出现系统不响应(ANR)对话框。需要做的就是继承AsyncTask来创建一个后台工作线程,并实现doInBackground()方法。
还有一种方式就是自己创建一个Thread类或者HandlerThread类。需要注意这样也会使App变慢,因为默认的线程优先级和主线程的优先级是一样的,除非你明确设定线程的优先级。
3、在线程中初始化查询操作
当查询操作正在后台处理时,展示数据也不是即时的,但是你可以使用CursorLoader对象来加快速度,这个操作可以使Activity和用户之间的互动不受影响。
使用这个对象后,你的App会为ContentProvider初始化一个独立的后台线程进行查询,当查询结束后就会给调用查询的Activity返回结果。
二、友盟详解
1、U-APM 是友盟+推出的App稳定性监控、性能监控和云真机测试平台。通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力,及卡顿、启动分析等性能能力,支持多场景、多通道智能告警监控,帮助开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。
2、提供了海量Android、iOS真机,通过资源集中管理,合理调度分配,为开发者提供发版前测试、发现线上问题后复现等场景使用,助力开发者平衡成本与需求,提升研发效率。友盟+云真机搭载在U-APM应用性能监控平台上,U-APM提供了灵活地测试操作界面,支持ADB调试、WEB远程调试、扫码、抓包、虚拟定位等测试功能,并提供了测试报告供开发者后续查看!
总之,友盟与竞品相比较来说,友盟拥有明显优势,强烈推荐Android开发人员使用友盟U-APM,深入了解应用的性能和稳定性,集成简单、服务有保障,帮助您高效提升应用质量,让您的app变得如此丝滑!