#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上的控件。
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布局