1.1 什么组成了一个Android应用
Android应用由一些松耦合的组件组成,通过manifest文件描述了各个组件以及他们之间的交互,同时应用的元数据也包括了他的硬件以及平台需求。
下边的六个组件提供了你应用的创建模块:
1.1.1 Activities
你应用的表现层。你应用屏幕的每个界面都是一个Activity class的扩展。Activities 使用视图去形成一个图形用户接口,用来显示信息和对用户的动作进行反馈。相对于桌面应用开发来说,一个Activity相当于一个表单。你将了解更多关于Activity这章中。
1.1.2 Services
应用程序的不可见的工作者。Service组件在后台运行,更新你的数据源和可见的Activities并且触发提醒。他们经常被用于处理一些常规的进程,这些进程已经不活跃或者不可见。你将会在第九章学习如何创建这些Services。
1.1.3 Content Providers
可分享的数据存储。Content Providers 经常被用于管理和共享应用数据库。他们最核心的意义就是共享应用数据。这就意味着你可以通过配置Content Providers去允许访问其他应用数据,并且可以将自己应用的数据共享。Android设备包括了几个原生的Content Providers 对外共享了有用的数据库信息,例如媒体信息和联系人信息。你将会在第七章的学习如何创建和使用Content Providers。
1.1.4 Intents
一个应用内部信息传递框架,使用Intents你可以在系统层面传递信息或者只是传播信息给一个指定的Activity和服务,指定你的目标就能执行一个动作。系统会决定目标是是否反馈合适的动作。
1.1.5 Broadcast Receivers
Intent广播的消费者。如果你创建并注册了一个广播接收者,你的应用就能监听广播信息,并且根据条件进行匹配。在响应发送过来的信息的shih,Broad Receiver将会自动的启动你的应用。这是创建一个事件驱动应用的完美解决方案。
1.1.6 Wigets
一些能被加到home screen上的可视化组件。大量的广播接收器、控件让你可以为用户创建动态、交互性应用组件嵌入到home screens上。在第十章你将了解如何创建你自己的widgets。
1.1.7 Notifications
一个用户提醒框架。提醒帮你不用终端用户当前Activity就能提醒用户。他们选择在一个Service或者Broadcast Receiver技术去获取用户的关注。例如,当一个设备受到一个文本信息或者来电,他会通过闪烁显示灯,发出声音,显示图形或者显示信息的方式来提醒你。通过使用Notifications你可以在你的应用上触发相同的事件。
通过松耦合应用组件,你可以共享和交互各个组件,包括你自己开发的的第三方组件应用。