15 个必知的 Android 开发者选项

标签: 未分类 | 发表时间:2015-12-13 01:23 | 作者:techug
出处:http://www.techug.com

Android开发者选项,看起来很简单的事情,其实很多同学对它了解得不够,Google用心良苦得为我们设计了这么多小开关都是有它的作用的,今天也花了点时间,过了一遍全部的30多个开关,从中整理出15个对日常Android开发比较有帮助的选项。

需要指出的是,不同的ROM对开发者选项的支持不一样,精简掉一些很正常,我下面提到的都是官方支持的功能,当然不同的官方版本支持程度也不一样,你手机上找不到也别奇怪。

抱歉这里不介绍开发者选项在哪怎么开启之类的问题。

1. Stay awake

充电时保持屏幕唤醒,开发的时候,时不时的锁屏真是够了,开启它后只要插着USB线就不需要总去解锁屏幕啦。

2. Select runtime(Dalvik or ART)

ART runtime下你的应用会更加丝滑,目前高版本的Android上已经直接是ART runtime了,但作为Android开发也许需要保证你的应用在两种runtime下都能正常运行,这可能是测试时需要更多考虑的。

3. Process stats

里面有关于当前运行进程的一切信息,对于一般用户,它就是一堆无意义的数字,对于Android开发人员来说,调试时这些信息也许可以帮你大忙。

4. USB debugging

这个无需介绍,不开它怎么调试呢?(虽然现在都流行无线调试了)

5. Allow mock locations

当你的应用需要用到GPS功能,获取位置信息时(比如天气应用),可以通过它搭配一些位置模拟应用,模拟全球任何地点。(还能干什么?机智的你肯定想到啦)

6. Show surface updates

在界面绘制时,闪烁提醒,开启它后简直能闪瞎你的眼睛,但有时候我们需要精确知道具体的界面绘制细节时,不得不需要忍受这种折磨。

7. Show layout bounds

显示布局格子,当你看到一个应用有很棒的界面效果,想知道它是怎么布局的?开启这个功能即可。我更常用的使用场景是:每当有PM过来问我人家这个界面是Native实现的,还是类似Hybrid方案的Web实现时,我就让他开启这个功能,WebView是一个整体的格子,Native View是各种小格子组合而成。(除非自己重绘实现自定义View, 一般复杂布局也不会这么干)

8. Force RTL layout direction

强制RTL布局,RTL也就是Right To Left,阿拉伯国家一般有这种文化,类似古时候的中国,文字从右往左读,包括界面布局也是从右往左的,感觉操作习惯都跟我们是镜像的,如果你跟我一样不幸需要做这种坑爹适配的话,这也是必须掌握的技能。

9. Animation scale

动画的尺度、速度调整也是很有用的功能,尤其在实现复杂的组合动画效果时,调慢点可以看得更清楚,当然你可以在自己代码里调慢,但每次改代码重新build很麻烦对不对?而且如果是PM走过来让你研究一下某款App的酷炫动画效果呢?

10. Simulate secondary displays

它允许你模拟不同屏幕尺寸下应用的表现,IDE里虽然也有类似的功能,可那毕竟只是个静态的效果。

11. Debug GPU overdraw

这里是指不正确的过度绘制:

  • 原色: 没有过度绘制
  • 蓝色: 一次过度绘制
  • 绿色: 两次过度绘制
  • 粉色: 三次过度绘制
  • 红色: 四次及以上过度绘制

值得提醒的是,过度绘制有时是无法避免的,Android建议是不要超过一次过度绘制,也就是可以是蓝色的,不能绿了。

12. Strict mode enabled

严苛模式下,当应用做了一些影响性能的事情,屏幕会闪一下提醒你。你也可以在代码里为自己的应用开启严苛模式,一旦发现一些性能问题,就会有详细Log输出, 为避免影响线上用户,建议只在Debug模式下开启。

13. Show CPU usage

在你屏幕右上角显示一个小窗口,提示当前CPU的各种信息,在性能调试时会有一些帮助,看是否是CPU的负载过高导致了性能问题。

14. Profile GPU rendering

看下面这张图,就明白它的作用了,开启后,会在下方显示一张实时绘制图,记住 那条绿线是性能流畅与否的底线,超过的时刻就会出现掉帧,就会有卡顿的感觉,界面性能调优的一个最重要指标就是将所有界面操作尽量优化到那条绿线以下。具体的原理可以看胡凯同学的Android性能优化典范,我的公众号里也收录了他这篇经典文章。

15. Don’t keep activities

开启这个选项后,当你从Activity A跳转到Activity B时,Activity A就会被立即销毁,这一般用来模拟设备内存不足时后台Activity被销毁的场景,如果你的应用能做到开启它时功能仍基本正常,说明代码设计得比较合理,不同Activity之间的耦和很低,对于复杂业务的应用来说,能做到这点真心不容易。

相关 [android 开发] 推荐:

Android开发Tips

- - CSDN博客推荐文章
欢迎Follow我的 GitHub, 关注我的 CSDN.. 介绍一些, 在Android开发中, 会经常使用的小知识点.. submodule与git可以保持实时同步. 导入, 路径多于一个, 前面不添加冒号(:).. 使用PackageManager.. // 检查App是否安装 private boolean appInstalledOrNot(String uri) {.

Android 开发者调查

- - 爱范儿 · Beats of Bits
Startup 是为 Android 开发者提供盈利模式的一个公司. Android 开发者只要在应用上推广 Startup 服务,并且为网站带去流量,就可以得到网站给予的补贴. 今年 3 月的时候,Startup 网站对 Android 开发者进行了一次调查. 现在,他们将调查的结果制成了信息图,并 发布在网站之上.

Android敏捷开发指南

- - 互联网的那点事
本文紧密结合移动开发方法与技术,围绕Android平台的开发探讨提供更高质量移动产品的解决方案. 作者中分析了移动开发中常见的问题,从两方面阐述了ThoughtWorks使用的测试开发方案和相应的架构方法与常用工具应用,并进一步阐述了为移动开发流程所提供的持续发布方案. 随着云计算、移动互联等一系列新技术概念的崛起,新一轮的IT经济正在不断扩大发展.

Android应用开发资源

- - InfoQ cn
Android应用设计和开发人员现在可以参考由Android用户体验(UX)团队官方发布的 Android设计指南. 该指南提供了开发者应该遵循的基本原则,并列出了很多细节指导,涉及 设备与显示、 主题、 触控交互、 度量与栅格、 排版、 色彩、 图标设计,以及如何 编写用户交互界面的提示语.

Android 开发视频推荐

- - 大猫の意淫筆記
作为 Android 死忠粉,总是想自己来两手,无奈没摸过后台开发,面向的唯一对象就是马总. 花了个把星期入个门,发现还是挺好玩的. 市面上的 Android 入门书有2个主要问题,一个是都要求有 Java 基础,另一个是跟不上 Android 版本更新.所以并不推荐买书学习. 斯坦福大学公开课:编程方法学.

Android 开发者在 Android Market 上兜售应用

- SotongDJ - 谷安——谷奥Android专题站
无论你是 Android 用户还是开发者,我们相信你会同意我们所说的一个事实:Android Market 还远未完善,我们不是在谈论它的用户界面或者是如何“开放”,而是另外一个话题. CatNinjaFly,或者是 SuperNinjaCat,又或者是 NinjaCatFly. 叫什么都不要紧,要紧的是我们关心的这个问题,要紧的是它们都是来自同一开发者的完全是相同的游戏,很显然,开发者(商)NANJAANDROID 为了让他们的应用能够在 Android Market 多一些曝光率于是用不同的名称来在 Android Market 中兜售.

Eclipse开发Android应用程序入门

- Bingnan - 酷壳 - CoolShell.cn
原文出处:http://www.smashingmagazine.com/2010/10/25/get-started-developing-for-android-with-eclipse/. 如今的移动设备应用程序开发充满着让人振奋的东西. 功能强大的硬件支持,平板电脑,多样的软件平台(塞班 OS,iOS,WebOS,Windows Phone 7…),移动设备开发者前景充满了机会和挑战.

android开发书籍emule下载链接

- jing77 - biAji HeRe
本来放在Verycd的,出于避免某些难以预料的问题的考虑(就像Verycd的诸多电影资源一样),我不得不觉得应该将Verycd作为一个备选方案. ed2k: [android.开发书籍].Beginning.Android.2.(Apress,.2010,.1430226293).pdf. ed2k: [android.开发书籍].Hello.Android.3rd.Edition.pdf.

Android能赢得开发者吗?

- Aragorn - cnBeta.COM
我们听到很多关于Android大受欢迎的消息;从市场份额上说,它明显超越了众多竞争对手,比如苹果的iOS. 不过,尽管倍受追捧,对消费者也很有吸引力, Android似乎还是失去了一部分人的支持,比如开发者,而这部分支持对OS取得成功至关重要. 为什么Android赢取开发者的支持这么难. 更重要的是,他们要如何赢得开发者.

Android Native 代码开发学习笔记

- iDesperadO - WindStorm
本文提供排版更佳的PDF版本下载. JNI,全称Java Native Interface,是用于让运行在JVM中的Java代码和运行在JVM外的Native代码(主要是C或者C++)沟通的桥梁. 代码编写者即可以使用JNI从Java的程序中调用Native代码,又可以从Native程序中调用Java代码.