`

我的Android最佳实践-ADT

阅读更多

(持续更新中。原创作品,保留所有权利,转载请注明出处)


开发了一段时间的Android应用,积累一些心得和经验,故而汇集成一份最佳实践,这个最佳实践肯定不是普遍意义上的“最佳”,而是“我的” 最佳 实践,但是我会随着学习研究的深入不断更新,希望它越来越好,欢迎批评指正。(注意:阅读本文需要有一定程度的Java和基本的Android基础知识)

以下是内容纲要:


1. 我的Android最佳实践-ADT

2. 我的Android最佳实践-Activity&Window

3. 我的Android最佳实践-Layout&View

4. 我的Android最佳实践-Service



多工程开发:

 

在Eclipse中可以将一个工程分成多个工程目录,一个作为主工程,其他作为子工程。子工程 可以是Android工程,也 可以是普通Java工程(ADT17开始不能直接引用Java工程了,需要自行编译Jar并导入)。主工程将子工程作为library引入进来,Android子工程需要在其工程属性中设定“Is Library”为选中才可被主工程引用。

 

子工程设置:


主工程设置:


 

调试程序的时候只需要将主工程部署到模拟器或者真机上即可。但是需要注意的是,ADT的自动编译功能工作的并不是很好,有时候在子工程编译完成后还需要clean主工程,方可将子工程的改动同步过去。


多工程可以方便管理代码,重用代码,但是也带来潜在的冲突问题,不同工程的资源文件(位于res目录),如果采用的相同的文件名的话,就会产生冲突,导致程序无法定位到正确的资源。解决方法是所有资源文件都以一个各自唯一的前缀命名。另外,在values目录下的字符串资源文件中,如果不同项目各自设定了同名的字符串资源,也会冲突,虽然这个冲突不会导致编译和运行问题(因为只是一个资源标识),但是也造成了一定的混乱,尽量也采用上面文件命名方法来命名字符串资源。


自动编译部署:

 

ADT在你每次修改资源或者源代码后保存时,会自动编译代码,打包资源,这个过程会花费一点时间,特别是工程比较大,资源比较多的情况下,花的时间会让人难以忍受。在一台Intel Celeron双核 E3300 2.5GHz,2G内存,系统为Windows XP的机器上,我一个大概不到10M资源的工程,每次保存修改的源代码时编译打包大概要花20秒的时间(这还没包括部署到真机或者模拟器上的时间),这样的条件进行开发是非常低效率的。不过幸运的是,在同样的硬件机器上,改用系统为Ubuntu Linux 11.04,同样版本的Eclipse+ADT,这个编译打包的时间缩短为5秒钟左右,这应该还算在可以忍受的范围之内。

 

 

有时候你用ADT的可视化工具改动layout之后直接部署调试,会出现类似

java.lang.ClassCastException: android.widget.TextView

的异常,虽然你可能只是调整了一下某个布局元素的位置,但是它还是发生这样的异常,通常clean重新编译即可。这个大概是ADT的bug导致的,没有去深究。



布局管理:

界面上一般的布局采用LinearLayout就可以了,如果需要复杂点的布局,比如横竖相间的布局,则可以在LinearLayout中嵌套一层或多层LinearLayout,并设置不同的方向(orientation)。如果需要更加复杂灵活的布局方式,可以使用RelativeLayout进行布局管理, RelativeLayout 可以使用Layout align left|right|top|bottom 进行不同Widget之间的对齐。特别要注意的是该参数设定的对其目标必须在本Widget之前声明(XML中的顺序),否则ADT无法识别,会报编译异常。

 

为了使布局美观,避免拥挤的感觉,应当让布局中的各种元素之间保持适当的距离。Layout与其包含的Widget的间距用padding属性来设置,Widget与Widget之间的距离用Layout Margin属性来设置。


模拟器:

Android的模拟器可以让你在无真机的情况下进行程序调试 ,大概是由于X86和ARM体系不同的缘故,模拟器的启动和运行APP的速度都很慢(Win和Linux机器都是),所以模拟器不宜重复启动,每次启动后不要重启,直接修改程序并部署即可。


由于Android的机型非常多,规格千奇百怪,有各种的分辨率和尺寸关系存在,如果你想让你的应用在任何设备上都展示得当的话,就需要设置不同分辨率和尺寸关系的模拟器,设置这个关系的参数是:Abstracted LCD Dencity表示 分辨率和尺寸的比率 。那么如何计算这个比率呢?假设一台分辨率为800*400的的设备,计算得到它的对角分辨率是900,如果这个机器是5英寸的,那么这个dencity=900/5=180;假如机器是3.7英寸的,dencity=900/3.7=240。按照计算得到的数值设置 Abstracted LCD Dencity即可创建相应分辨率和尺寸比率的模拟器(如下图)。

 

 

  • 大小: 8.3 KB
  • 大小: 12.4 KB
  • 大小: 48.8 KB
分享到:
评论

相关推荐

    android-adt-sdk.zip

    4. **示例代码和文档**:帮助开发者了解API的用法和Android开发的最佳实践。 二、ADT(Android Development Tools):ADT是一个Eclipse插件,专门针对Android开发设计,它极大地简化了Android项目管理和代码编写...

    安卓-ADT文件

    - 下载ADT插件:在Google官方的Android Developer网站上可以找到ADT的下载链接,通常以.zip格式提供,例如“ADT-23-2”这样的版本号。 - 安装ADT:将下载的.zip文件解压到Eclipse的插件目录下,然后重启Eclipse,...

    最新android SDK ADT-17.0

    Android SDK ADT-17.0是Android开发者工具的一个重要版本,它包含了开发Android应用程序所需的全部组件和更新。在这个版本中,重点在于提高开发效率、优化用户体验和增强平台功能。以下是一些关于这个版本的关键知识...

    android-sdk-windows

    2. 编写代码:使用IDE进行编码,遵循Android架构和最佳实践。 3. 调试:利用Android Studio的调试工具,如断点、变量查看器、线程检查器等,进行问题定位。 4. 测试:在物理设备或AVD上运行应用,进行功能测试和性能...

    android ADT-14.zip

    Android ADT(Android Developer Tools)是Google为Android开发者提供的一个集成开发环境插件,它构建在Eclipse之上,为开发Android...此外,不断学习和掌握Android开发的最佳实践,将有助于提高开发效率和产品质量。

    android-sdk-2.1

    5. **文档**:详尽的API文档和开发者指南,帮助开发者理解API的使用方法和最佳实践。 6. **更新工具**:SDK Manager负责检查和下载最新的SDK组件,包括新的API级别、平台工具、构建工具等,确保开发者能及时获取...

    adt-bundle-windows-x86_64-20140321.zip

    描述中提到的"安卓文档"可能指的是随包附带的API参考文档和开发者指南,这些文档对于理解Android系统的工作原理、学习API使用方法和遵循最佳实践至关重要。 标签"安卓"表明这是与Android操作系统相关的开发资源。...

    Eclipse android ADT-23.0.6

    总的来说,Eclipse Android ADT-23.0.6是Android开发者的重要工具,它极大地提升了开发效率和质量。通过与Eclipse的深度融合,ADT提供了从项目创建、UI设计、编码、构建到调试的全方位支持,让开发者能够专注于创新...

    android-Camera-Code.zip_android 相机_android 相机_camera_camera and

    在Android平台上,相机功能是应用开发中的重要组成部分。本文将深入探讨`android-Camera-Code.zip`中的相机应用示例,...同时,随着Android版本的更新,不断关注新的API和最佳实践,可以使你的相机功能更加先进和高效。

    android-sdk-27

    6. **资源和文档**:SDK还包括了详细的API参考文档、开发者指南、示例代码和最佳实践,帮助开发者了解如何有效地使用SDK。 7. **权限管理系统**:在API Level 27中,权限管理系统得到进一步优化,比如动态权限申请...

    android-17-win

    8. **Lint工具**:静态代码分析工具,检查代码中的潜在问题和最佳实践。 9. **权限管理**:Android 4.2引入了新的权限控制,例如,应用可以请求动态权限,增强了用户隐私保护。 10. **多用户支持**:Android 4.2...

    Android-Phone-Manager.rar_java programming_phone

    "Android Documentation.doc"是项目中不可或缺的部分,它包含了Android平台的官方文档,为开发者提供了详细的API参考、开发指南、最佳实践等信息。通过阅读这些文档,开发者可以了解Android系统的工作原理,掌握如何...

    android-2.2-froyo-src.rar

    通过对源码的阅读和研究,开发者可以学习到最佳实践,了解系统级别的优化技巧,并能更好地解决实际开发中遇到的问题。 总之,"android-2.2-froyo-src.rar"提供的源码是一份宝贵的教育资源,无论是对于系统级开发者...

    linux 64位 android-sdk_r13-linux_x86

    10. **示例代码和文档**:帮助初学者理解API和最佳实践,同时也是高级开发者解决问题的重要参考资料。 总之,"linux 64位 android-sdk_r13-linux_x86"是一个为64位Linux用户准备的Android开发环境,包含了所有必要...

    Android-这个项目是对android-tv-launcher开源项目用gradle编译的升级改造

    【Android TV Launcher 开源项目与 Gradle 编译升级详解】 Android TV Launcher 是一个专为 Android TV 设备设计的...通过这样的实践,开发者可以更好地掌握 Android 项目构建的最佳实践,为未来的工作打下坚实基础。

    android-sdk_r17-windows.zip

    7. **文档和示例代码**:详细的开发者文档帮助理解API和最佳实践,同时提供的示例代码有助于快速上手开发。 在安装"android-sdk_r17-windows.zip"后,开发者通常需要通过SDK Manager更新到最新的平台和工具,以保持...

    Android 开发环境-Eclipse版解压版附带DEMO

    通过导入DEMO到Eclipse,你可以直接运行和调试,从而学习实际的编程技巧和最佳实践。 此外,Eclipse的特性如代码自动完成、错误检查和快速修复等功能,极大地提高了开发效率。而版本控制集成(如Git)和团队协作...

    Android SDK android-14_r04.zip

    4. **文档**:包含API参考、开发者指南和最佳实践等,帮助开发者理解如何使用各种Android API。 5. **库**:包含各种Android支持库,如v4支持库,用于向后兼容旧版本的Android设备。 6. **Android Studio集成**:...

    android学习资源-ide

    在Android开发领域,IDE...在学习和使用Android IDE的过程中,了解其核心功能、掌握快捷键和最佳实践,将大大提高开发效率。同时,不断关注官方更新和新工具,保持与时俱进,对于成为一名优秀的Android开发者至关重要。

Global site tag (gtag.js) - Google Analytics