#Android应用程序架构
Android程序的入口被称为Main Activity,带有界面的Android应用程序一般需要从Main Activity启动。
目录结构
Adnroid工程主要包括两个区域:源码区和资源区。
Mainifest.xml
下面是一个标准的AndroidManifest.xml文件样例。
<?xml version="1.0" encoding="utf-8"?><manifest><!-- 基本配置 --><uses-permission /><permission /><permission-tree /><permission-group /><instrumentation /><uses-sdk /><uses-configuration /><uses-feature /><supports-screens /><compatible-screens /><supports-gl-texture /><!-- 应用配置 --><application><!-- Activity 配置 --><activity><intent-filter><action /><category /><data /></intent-filter><meta-data /></activity><activity-alias><intent-filter> . . . </intent-filter><meta-data /></activity-alias><!-- Service 配置 --><service><intent-filter> . . . </intent-filter><meta-data/></service><!-- Receiver 配置 --><receiver><intent-filter> . . . </intent-filter><meta-data /></receiver><!-- Provider 配置 --><provider><grant-uri-permission /><meta-data /></provider><!-- 所需类库配置 --><uses-library /></application></manifest>
Android应用程序中的资源
Android应用程序组件
应用程序组件是一个Android应用程序的基本构建块。这些组件由应用清单文件松耦合的组织。AndroidManifest.xml描述了应用程序的每个组件,以及他们如何交互。
以下是可以在Android应用程序中使用的四个主要组件。
Activity
Activity是Android的核心类,全名:android.app.Activity
在Activity中有一个onCreate()方法,对Activity进行初始化,通过setContentView方法将View放到Activity上,绑定后,Activity会显示View上的控件。
Service
Service没有可视化接口,但可以在后台运行。
服务类必须从android.app.Service继承。
BroadCast Receiver
广播接收器组件唯一的功能就是接收广播动作,以及对广播动作做出相应。
一个程序可以有很多个BroadCast Receiver,所有的广播接收类都必须继承android.content.BroadcastReceiver类。
广播接收器和服务一样没有用户接口,但在广播接收器中可以启动一个Activity来响应广播动作,比如通过一个Activity对用户进行提醒。
Content Provider
内容提供者可以为其他应用程序提供数据。
每一个内容提供者是一个类,这些类都需要从android.content.ContentProvider类继承。
在ContentProvider类中定义了一系列的方法,通过这些方法可以使其他应用程序获得内容提供者提供的数据,但是在应用程序中不能直接调用这些方法,而是需要通过android.content.ContentResolver类的方法来调用内容提供者类中提供的方法。
Android程序的UI设计
手工配置xml
ADT自带的可视化UI设计器
使用DroidDraw设计UI布局