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