安卓开发者选项-常用功能介绍

来源:互联网 发布:2017全国最新人口数据 编辑:程序博客网 时间:2024/06/02 16:30

安卓开发中队开发者选项的认识

开发者选项是谷歌为开发者提供的一个服务于APP验证、调试、优化等功能的入口,它可以帮助开发者发现一些bug,为APP的深层优化提供直观的优化选项和数据,应该说是每一个安卓APP开发者必须掌握的基本调试工具。

由于工作阅历和个人能力等原因,作者在这里只是将常用的选项做一下解释和说明,有不当的地方欢迎大神们批评指正。

一、不锁定屏幕

       为了省电,我们的手机一般会在一定时间(一般几秒钟)无操作的话自动锁屏,所以开发的时候一段时间不用手机就会黑屏,导致无法调试应用,这个选项开启之后,连接手机将不会锁屏,一直处于常亮状态,方便我们调试应用。

二、USB调试

       开发者需要打开这个你才能通过电脑连接上手机,进行调试APP的操作,如果发现调试的时候手机连接不上,关注看一下是不是没有打开这个选项吧。

三、允许模拟位置

  这个选项是允许模拟位置,当开发者对开发的某些定位软件(一般为地图软件),做测试的时候使用的,功能是模拟手机目前所处的位置(比如手机当前实际位置在北京,但测试软件时要求测试条件为伦敦,就可以使用该功能进行测试软件模拟定位)

四、显示布局边界

       开启这个选项后会显示页面布局的边界和框架,通过这个显示结果我们可以看到没有达到预期效果的布局的问题在哪里。在一些轻量级应用中,大量使用了HTML进行内容展示,这个选项可以帮助开发者在分析一个应用的布局时,查看某个布局界面是原生的安卓布局,还是使用HTML进行页面展示的。


五、调试GPU过度绘制

 开启这个选项后,系统会用几种不同的颜色绘制屏幕,来标识overdraw绘制发生的位置以及程度如何,各种颜色的意义如下:
没有颜色: 意味着没有overdraw。像素只画了一次。
蓝色: 意味着overdraw 1倍。像素绘制了两次。大片的蓝色还是可以接受的(若整个窗口是蓝色的,可以摆脱一层)。
绿色: 意味着overdraw 2倍。像素绘制了三次。中等大小的绿色区域是可以接受的但你应该尝试优化、减少它们。
浅红: 意味着overdraw 3倍。像素绘制了四次,小范围可以接受。
暗红: 意味着overdraw 4倍。像素绘制了五次或者更多。这是错误的,要修复它们。


六、显示CPU使用情况

  在屏幕上层叠加一层与当前进程不冲突的显示平面,右上角显示当前CPU正在处理的进程。


七、GPU呈现模式分析

 横行表示渲染花费的总时间,纵向每列数据显示了渲染每一帧需要的时间,每一条线意味着一帧被绘制出来,而每条线中的不同颜色又代表着在绘制过程中的不同阶段:
       Draw (
蓝色)代表着View.onDraw()方法。在这个环节会创建/刷新DisplayList中的对象,这些对象在后面会被转换成GPU可以明白的OpenGL命令。而这个值比较高可能是因为view比较复杂,需要更多的时间去创建他们的displaylist,或者是因为有太多的view在很短的时间内被创建。
       Process (
红色) –执行Displaylist中的内容并创建OpenGL命令。如果有过多或者过于复杂的displaylist需要执行的话,那么这阶段会消耗较长的时间,因为这样的话会有很多的view被重绘。而重绘往往发生在界面的刷新或是被移动出了被覆盖的区域。
       Execute (
黄色) –发送OpenGL命令到GPU。这个阶段是一个阻塞调用,因为CPU在这里只会发送一个含有一些OpenGL命令的缓冲区给GPU,并且等待GPU返回空的缓冲区以便再次传递下一帧的OpenGL命令。而这些缓冲区的总量是一定的,如果GPU太过于繁忙,那么CPU则会去等待下一个空缓冲区。所以,如果我们看到这一阶段耗时比较长,那可能是因为GPU过于繁忙的绘制UI,而造成这个的原因则可能是在短时间内绘制了过于复杂的view

       绿色的横线表示每一帧渲染时间的阈值,因为Android流畅运行的帧率为60fps,如果每一帧的渲染时间超过16.6ms,帧率就降低到小于60fps。如果发现条形图基本上低于绿色的线,说明页面的绘图效率良好,但当条形线频繁的超过绿色的线,应用的布局应该是有问题的,通常都是由于布局不合理或者是太过复杂。在androidstudioAndroid Monitor工具中还有一条红色的线,如果安卓运行的帧率为30FPS,那么每帧渲染时间就为33.3ms,这时页面卡顿会更明显。因此应该尽量保持在绿色线以下,保证页面流畅度。



y轴是时间花费的GPU来执行,处理,准备和画框架,以毫秒为单位的数量。x轴记录经过的时间; 它始于秒,然后分,秒等。绿线表示每秒(FPS)60帧,红色线代表30 FPS。此图是谷歌官方给出的介绍。(https://developer.android.com/studio/profile/am-gpu.html)

八、不保留活动

       开启这个选项表示页面切到后台以后将会被系统销毁,一般用来模拟设备内存不足时后台Activity被销毁的场景。我们可以用它来测试页面重建的稳定性。如果你的应用在开启它时功能基本正常,说明代码设计得比较合理,代码写的足够健壮。这个具体怎么理解呢?

九、显示所有“无响应”

  为后台应用程序显示应用“程序无响应”对话框,就是很多在后台运行的你并看不到的进程,如果它无响应了,系统会显示该无响应进程的无响应对话框。

十、后台程序限制

  自定义允许后台的程序个数

十一、显示“强制关闭”

当应用无响应的时候,显示强制关闭应用的选项。

1 0
原创粉丝点击