Android编码规范

一、Android编码规范

1.java代码中不出现中文,最多注释中可以出现中文

2.局部变量命名、静态成员变量命名:只能包含字母,单词首字母出第一个外,都为大写,其他字母都为小写,以m开头;

3.常量命名:只能包含字母和_,字母全部大写,单词之间用_隔开

4.layout中的id命名

命名模式为:模块名字(包名)_(布局名字)_layout.xml

view的缩写详情如下

LayoutView:lv

RelativeView:rv

TextView:tv

ImageView:iv

ImageButton:im

Button:btn

5.activity中的view变量命名

命名模式为:逻辑名称+view缩写

建议:如果layout文件很复杂,建议将layout分成多个模块,每个模块定义一个moduleViewHolder,其成员变量包含所属view

6.strings.xml中的id命名

命名模式:activity名称_功能模块名称_逻辑名称/activity名称_逻辑名称/common_逻辑名称

strings.xml中,使用activity名称注释,将文件内容区分开来

7.drawable中的图片命名

命名模式:activity名称_逻辑名称/common_逻辑名称

8.控件的大小,文字大小,颜色,都要单独提取出来,不要直接写死在布局文件,避免后期的国际化,适配带来的麻烦.

dimens,colors

8.styles.xml:将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中;

9.使用layer-list和selector

10.图片尽量分拆成多个可重用的图片

11.服务端可以实现的,就不要放在客户端

12.引用第三方库要慎重,避免应用大容量的第三方库,导致客户端包非常大

13.处理应用全局异常和错误,将错误以邮件的形式发送给服务端

14.图片的.9处理

15.使用静态变量方式实现界面间共享要慎重

16.Log(系统名称 模块名称 接口名称,详细描述) 需要有自己的日志帮助类,出正式包的时候,把日志全部关掉.

17.单元测试(逻辑测试、界面测试)

18.不要重用父类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突

19.activity中单击事件,要实现onClickListener接口.

20.strings.xml中使用%1$s实现字符串的通配

21.如果多个Activity中包含共同的UI处理,那么可以提炼一个CommonActivity,把通用部分叫由它来处理,其他activity只要继承它即可

22.使用button+activitgroup实现tab效果时,使用Button.setSelected(true),确保按钮处于选择状态,并使activitygroup的当前activity与该button对应

23.如果所开发的为通用组件,为避免冲突,将drawable/layout/menu/values目录下的文件名增加前缀

24.数据一定要效验,例如字符型转数字型,如果转换失败一定要有缺省值;服务端响应数据是否有效判断;

25.同一个客户端如果要放在不同的市场,而且要统计各个市场下载及使用数据时

针对不同的客户端打不同的包,唯一的区别是versionName,apk文件名为versionName.apk

在升级时,要将自己的versionCode和versionName一并传给服务端,如果需要升级,则下载versionName相对应的apk

关于是否要强制升级:

1).不管何种情况都强制升级

2).判断用户的版本和当前最新版本,如果兼容则强制升级,否则可选;

26.有的按钮要避免重复点击

转:http://www.cnblogs.com/xiongbo/archive/2011/08/15/2098130.html

更多相关文章

  1. Android(安卓)的 supportdesign
  2. Android(安卓)常用RGB值以及中英文名称
  3. android获取经纬度和地方名称
  4. Android之再谈文件操作和SDcard读写
  5. Android(安卓)Studio修改apk命名
  6. Android(安卓)MVP Demo
  7. Android之Audio常用属性变量
  8. Android(安卓)P Android.dp添加逻辑判断
  9. Android关于桌面快捷方式工具类!

随机推荐

  1. React Native开发指南
  2. Android开发之Camera分析(二)
  3. Android(安卓)DrawerLayout demo(抽屉菜
  4. Android(安卓)开源组件PagerBottomTabStr
  5. Android(安卓)ListView中onItemClickList
  6. Android(安卓)ExpandableListView折叠
  7. Android(安卓)自定义滚动选择日期
  8. Android(安卓)单选按钮RadioButton的使用
  9. 如何在Android5.1系统上实现RecyclerView
  10. 八款开源Android(安卓)游戏引擎介绍