Android性能优化之工具篇 — — 开发者选项

Google为了方便开发者调试Android程序专门开发了开发者选项功能,能够让开发者方便快捷调试Android应用程序。对于一般用户无需关注,所以往往开发者选项在新版本中都会隐藏,需要特殊操作才会展示入口,比如连续点击版本号等等。当然还有许多国内定制系统打开开发者选项的方式不尽相同,有的还会阉割掉部分功能,在各个版本之间也存在一定的差异,其实真正使用到的也就几项,我们现在只关心官方设备提供的功能选项(本博客使用的设备为Nexus 4  Android 7.1)。

下面我们一一介绍一下各个选项代表的含义。

  • 提交错误报告

 

顾名思义,将本机上安卓系统的出错日志以及硬件设备信息发送给Google。

  • 桌面备份密码

设置或更新桌面完整备份的密码。

  • 不锁定屏幕

充电时屏幕不会休眠,当然是建议关闭了。

  • HDCP检查

 

HDCP指的是高带宽数字内容保护技术,他的出现是为了保证HDMI或者DVI传输的高清晰信号不会被非法录制。当用户进行非法复制时,该技术会进行干扰,降低复制出来的影像的质量,从而对内容进行保护。该选项针对Android TV有效。

  • 启用蓝牙HCI信息收集日志

HCI指的是蓝牙协议栈主机控制接口,开启时会记录蓝牙互传文件的记录。也很少去开启这个。

  • 进程统计信息


这是一个强大的进程管理器,展示了相关后台服务信息。您也可以在这里管理运行进程等。

  • 图片颜色模式

sRGB(standard Red Green Blue)提升色彩还原度,对比度,提升成像水平。

  • WebView实现

主要是用于APP与网页交互,特别是混合开发,经常见的就是电商的APP,里面大量使用了Android WebView。

  • 自动系统更新

类似IOS通用功能的“软件更新”,自动更新系统用的,不开启。

  • 演示模式

 

 

打开后,会显示演示模式,状态栏信息不一定是真实的。

调试相关                                                                                                               

  • USB调试开关


这个作为开发者并不会陌生,我们在真机调试APP查看日志的时候肯定要打开这个开关,然后就可以通过adb命令管理手机上应用了。

  • 错误报告快捷方式

 

开启后,长按电源键会弹出右边的框框,说白了就是方便提交错误日志用的。

  • 选择模拟位置信息应用

软件开发人员对开发的某些定位软件(一般为地图软件),做测试的时候使用的,功能是模拟手机目前所处的位置(比如手机当前实际位置在中国,但测试软件时要求测试条件为美国,就可以使用该功能进行测试软件模拟定位)。

  • 视图属性检查



打开工具Android Device Monitor的Hierarchy View视图,选择某一个View你就会发现该属性


另外,在Debug模式下也能看到该属性,返回值是String[]类型,如果关闭,则返回为null。


将视图属性信息保存在 View 实例的 mAttributes成员变量中,以便将这些信息用于调试,您可以通过布局检查器界面访问属性信息(如果不启用此选项,“Attributes”项将不可用)。

  • 选择调试应用


允许开发人员在PC上调试某款应用。

  • 等待调试器


如果打开,其实就是下图:


  • 通过USB验证应用

可以检测我们使用ADT调试程序安装的APP或者通过USB连接真机在adb命令行下安装应用的安全性。

  • 日志记录缓存大小

  

顾名思义。

  • 持久化存储日志信息

 

不做过多解释了。

网络相关                                                                                                               

  • 无线显示认证

主要用于无线投屏用的。

  • WLAN记录日志

Service Set Identifier 无线网络中SSID,是路由器发送的无线信号的名字;Received Signal Strength Indication 接收的信号强度指示,无线发送层的可选部分,用来判定链接质量,以及是否增大广播发送强度。

  • WLAN切换到移动网络

  • WLAN漫游扫描


  • 始终开启移动数据网络

  • 选择USB配置

   

USB真机调试日志显示不出来时,看一下该配置是否选的是仅充电。

  • 绝对音量功能


输入                                                                                                                      

  • 显示点按操作反馈

效果如下图,建议平时玩玩就可以了,不需要打开。


  • 指针位置

效果如下图


绘图                                                                                                                      

  • 显示屏幕更新


当滚动屏幕或触控或者系统自动刷新使得屏幕上的某块区域重新绘制时,该区域闪烁。建议:别开,容易亮瞎咱们的24k钛合金眼。

  • 显示布局边界


显示当前页面各个组件的边界框架信息,对于开发人员参考好的app设计有些帮助。效果如下


  • 强制从右向左布局


效果如下,没什么用,主要针对某些国家的习惯的。


  • 窗口动画相关

这三项决定了你对整个rom的动态感官体验。比如启动app、桌面滑屏、确认框的弹出等,有了动画就会显得很顺滑以及和谐。关闭了或调节比例越低,会显得切换动作较为生硬,但好处是对系统资源占用就会降低。建议:保持前两个为0.5x,最后一个为1x,在性能和体验中间取个平衡。

  • 模拟辅助设备

 

效果如下

 

会有一个小屏幕,用于模拟各种屏幕分辨率的显示效果

  • 最小宽度


用来改变屏幕宽度,可以模拟不同分辨率的手机显示效果,您比如下图

 

硬件加速渲染                                                                                                        

  • 强制GPU渲染

安卓的软件应用的界面可以使用cpu或gpu渲染,包括桌面。由于gpu处理图形比cpu好,所以gpu渲染应用的界面会更流畅,同时减轻cpu的负担。gpu强制渲染就是hwa(hard ware  acceleration硬件加速)的一种,能够得到更好的优化。

但强制gpu也是有缺陷的。第一是强制GPU加速功能会增加功耗,降低待机时间。第二是,部分旧程序本身不支持gpu渲染,没有硬件加速hwa的就会出现崩溃。比较老的程序因为SDK版本低不支持gpu加速,或者开发时默认不开启gpu渲染,遇上gpu强制渲染就会出现问题。

  • 显示GPU视图更新

屏幕上的区域更新时闪烁响应的屏幕区域各种闪烁。

  • 显示硬件层更新


哪里会有更新啊。

  • 调试GPU过度绘制


当使用GPU绘图时,在屏幕上绘制不同的颜色来表明过度绘制的情况。过度绘制情况的好坏通过颜色来表示,从蓝色、绿色、淡红色到红色 ,分别代表从好到坏的渐变(1x过度绘制、2x过度绘制、3x过度绘制和超过4x过度绘制)。界面上存在少量的淡红色可以接受,但如果存在较多的大红色就代表过度绘制有点严重了。畅玩总的来说还好,以正常色和蓝绿色居多,说明GPU很智能。突然发现“全部设置”和“常用设置”两个标题是深红色,过度绘制。。。

效果如下

 

好恐怖。。。。

  • 调试非矩形裁剪区域

 

  • 强制启动抗锯齿


4倍抗锯齿,游戏达人应该对此很熟悉。经过小贝实测,对于畅玩的GPU来说,开启此选项不会明显的增加手机的发热量,对于续航也影响不大,当然这是建立在我的游戏时长比较短的情况下。但对画质的提升还是蛮明显的,地铁跑酷、极品飞车,游戏画面的边缘都有了明显改善,更为细腻圆润。建议:游戏达人,开;普通用户,随意。

  • 停用HW叠加层


停用的话,所有应用将共享视频内存,将不会经常检查碰撞与裁剪以显示一个合适的图像,将会耗费大量处理能力。而HW叠加层允许应用有单独的视频内存,性能自然要好些

  • 模拟颜色空间

 

色盲用户的福音。

媒体                                                                                                                      

  • 关闭USB音频转

监控                                                                                                                      

  • 启用严格模


在你打开某个应用后,点返回退出但在进程中仍然运行,长时间后屏幕会闪烁提示你在主线程上还是正在运行的应用程序。

  • GPU分析展示效果

 

您比如如下效果


这个用来调试应用,需要结合adb shell dumpsys gfxinfo your_package 命令来使用。可以用来测量某个app的帧速率,例如列表视图滚动的时候。还想深入了解的可以移步:http://blog.csdn.net/wangbaochu/article/details/50396512

  • 启用OpenGL跟踪

图形视角效果器,是手机制作图片软件的辅助工具,比如ps3D立体图,需要启用这个工具才能实现再编辑过程中的图片旋转,放大缩小复位等

应用                                                                                                                      

  • 不保留活动


  • 后台进程限制

 

自定义设置后台程序的进程限制。建议:这种系统级的东西就留给系统去处理吧,咱们自己设置的也许起到反面影响。保留“标准限制”即可。

  • 显示所有ANR


app出现FC(强制关闭)错误时(具体错误做安卓或java开发的人很清楚了,比如数组越界),提示给用户知晓。

  • 强制允许将应用写入外部设备

就是强制允许应用可以移到SD卡,旧手机内存小,那时候往往会安装到外部存储设备上(其实也是部分安装),会影响运行速度的。

  • 强制将活动设为可调整大小


用于分屏技术,可以解决部分没有适配分屏的应用,并不说开启它就一定能使用分屏模式。

猜你喜欢

转载自blog.csdn.net/luzhenyuxfcy/article/details/79373644