Android应用程序由组件组成,组件是可以被调用的基本功能模块。
Android系统利用组件实现程序内部或程序间的模块调用,以解决代码复用的问题,这是Android非常重要的特性。在程序设计时,在AndroidMainfest.xml中声明可共享的组件,声明后其他应用程序可以直接调用这些共享组件。
如果共享组件所在的进程没有启动,这个共享组件不能被其他程序调用,怎么办?
为了解决这一问题,Android系统必须能够在其他程序调用共享组件时,能够直接启动被调用的共享组件。因此,Android系统没有使用常见的应用程序入口点(类似于Java程序的Main函数)的方法,而是允许共享组件被Android系统直接实例化,从而保证能够调用进程没有启动的共享组件。
————————————————————
Android系统的4个组件
- Activity
- Android程序的呈现层,显示可视化用户界面,并接收与用户交互所产生的界面事件。
- Service
- 一般用于没用用户界面,但需要长时间在后台运行的应用。
- Broadcase receiver
- 用来接受并响应广播消息的组件。
- Contect provide
- Android系统提供的一种标准的共享数据的机制,应用程序可以通过其访问其他应用程序的私有数据。
Android系统通过组件机制,有效降低了应用程序的耦合性,使向其他应用程序共享私有数据(Connect provider)和调用其他程序的私有模块(Service)成为可能。