更多精彩内容,请点击阅读:《API Demos 2.3 学习笔记》
Android应用程序以可以分为下三种类型:
1、前端Activity(Foreground Activities);
通俗一点讲Activity可以理解为一个界面容器,里面装着各种各样的UI组件。例如,上面例子中“Hello World” 显示界面。
2、后台服务(Background Services);
系统服务(System Service)、系统Broadcast(广播信息)与Receiver(广播信息)接收器)等都属于后台服务。它们在后台运行时,并不会对于前端Activity的显示造成影响。
例如,音乐播放放到后台时,并不影响其他界面操作响应。
3、间隔执行Activity(Intermittent Activities);
这里我们以HelloWorld这个简单的应用程序为例,简述一下Android应用程序的架构。如上图所示:
src/ java源代码存放目录
gen/自动生成目录
gen目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。
res/资源(Resource)目录
在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图标或常量
res/drawable专门存放图标文件
res/layout专门存放xml界面文件,xml界面文件和HTML文件一样,主要用于用户界面显示
res/values专门存放应用使用到的各种常量,作用和struts中的国际化资源文件一样。
AndroidManifest.xml功能清单文件
这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。
default.properties系统默认信息,一般是不需要修改此文件
proguard.cfg proguard代码混淆工具配置文件,可能需要修改修改此文件
从SDK2.3开始我们可以看到在android-sdk-windows\tools\下面多了一个proguard文件夹。proguard是一个java代码混淆的工具,通过proguard,别人即使反编译你的apk包,也只会看到一些让人很难看懂的代码,从而达到保护代码的作用。