API Demos 2.3 学习笔记 (3)-- Android应用程序架构-阿里云开发者社区

开发者社区> 开发与运维> 正文

API Demos 2.3 学习笔记 (3)-- Android应用程序架构

简介:

更多精彩内容,请点击阅读:《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.javaR.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包,也只会看到一些让人很难看懂的代码,从而达到保护代码的作用。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章