Android应用程序由松散耦合的组件组成,并使用应用程序Manifest绑定到一起:应用程序Manifest描述了每一个组件和它们之间的交互方式,还用于指定应用程序元数据,其硬件和平台要求,外部库以及必需的权限。
下面几个组件提供了应用程序的基本结构模块:
- Activity:应用程序的表示层。应用程序中的每一个UI都是通过Activity类的一个或多个扩展实现的。Activity使用Fragment和视图来布局和显示信息,以及响应用户动作。
- Service:应用程序中不可见的工作者。Service组件在运行时没有UI,它们可以更新数据源和Activity,触发通知和广播Intent。它们被用来执行一些运行时间长的任务,或者不需要用户交互的任务。
- Content Provider:一个可共享的持久数据存储器。Content Provider用来管理和持久化应用程序数据,通常会与SQL数据库交互。Content Provider是在应用程序之间共享数据的首选方法。可以通过配置自己的Content Provider来允许其他应用程序访问,也可以访问其他应用程序提供的Content Provider。android设备包含了多个本地content Provider来提供有用的数据库,如媒体库和联系人信息等。
- Intent:一个强大的应用程序间的消息传递框架。android中大量使用了Intent。Intent可以用来启动和停止Activity和Service,在系统范围内或向目标Activity,Service或Broadcast Receiver广播消息,以及请求对特定的一数据执行操作。
- Broadcast Receiver:Intent侦听器。Broadcast Receiver使应用程序可以监听到那些匹配指定的过滤标准的Intent广播。Broadcast Receiver会自动地启动应用程序来响应某个收到的Intent,这个特点使它们成为了事件驱动的应用程序的最佳选择。
- Widget:通常添加到设备主屏幕的可视化应用程序组件。widget是Broadcast Receiver的特殊变体,可用于创建动态的交互式应用程序组件,用户可以把这些组件添加到他们的主屏幕上。
- Notification:Notification允许向用户发送信号,但却不会过分吸引他们的注意力或者打断他们当前的Activity。它们是应用程序不可见或者不活动时(特别是Service或者Broadcast Receiver)吸引用户注意的首选方法。例如,当设备接收到一个文本消息或者电子邮件的时候,消息传递应用程序或者Gmail应用程序可以通过闪灯,发出声音,显示图标或者滚动显示消息摘要的方式来提醒你。这就是利用了Notification功能。也可以在自己的应用程序中使用Notification。
时间: 2024-10-14 17:49:11