四大组件Activity、Service、ContentProvider、BroadcastReceiver简介

1.      Activity

Android的应用的用户界面由Activity类管理,同一时间只能显示一个。首选做法是Activity只关注用户界面,耗时的任务交给Service。从Android3.0开始,可以使用Fragments构建动态用户界面,适配不同尺寸设备。

2.      Service

任何不涉及用户界面的操作都应使用Service,所有组件都运行在同一个主线程里,所以使用AysncTask和Handler将耗时操作放到单独线程中运行。每个任务建议对应一个Service,针对启动不同Service处理更为简单。

3.      ContentProvider

不需要在应用中刻意定义ContentProvider存储数据,可选的有SharedPreferences存储简单键值对,使用SQLite数据库,或者使用File文件存储。LoaderAPI提供了从ContentProvider加载数据的实现,使用AdapterView显示应用数据时ContentProvider很好用。

4.      BroadcastReceiver

BroadcastReceiver无状态,仅在onReceive()调用时有效,唯一应做的就是把调用委托给另一组件。

第五个组件Application,使用频率少,但有时很方便。每个应用只有一个Application实例,可以通过它共享变量和应用中其他组件通信。相比使用单例,Application还实现了应用生命周期的回调。

四大组件Activity、Service、ContentProvider、BroadcastReceiver简介_第1张图片

你可能感兴趣的:(android,基础知识)