Android四大组件
2019-03-13 本文已影响133人
12313凯皇
昨天收到了一个电话面试,问我四大组件是哪些,ContentProvider想了半天都没回忆起来,感觉很low。。因此特地简单的复习一下Android的这四大组件。下面开始步入正题:
一、概述
首先呢,Android四大组件分别是Activity、Service、BroadcastReceiver和ContentProvider。下面将一一简单的介绍一下这四大组件。
二、Activity 活动
- 类型:展示型组件。
- 作用:展示一个界面并和用户交互。
- 两种调用方式:
显式调用和隐式调用。 - 四种启动模式:
standard标准模式、singleTop栈顶复用模式、singleTask栈内复用模式和singleInstance单实例模式。 - 七个生命周期方法:
onCreate()、onStart()、onResume()、onPause()、onStop()、onDestory和onRestart()。
三、Service 服务
- 类型:计算型组件。
- 作用:在后台执行一系列计算任务,耗时的后台计算建议在单独的线程中执行。
- 注册:在
AndroidManifest.xml中注册。 - 启动:需要借助
Intent来启动 - 两种运行状态:
- 启动状态:通过
startService()。 - 绑定状态:通过
bindService()。
- 启动状态:通过
四、BroadcastReceiver 广播接收器
- 类型:消息型组件。
- 作用: 在不同的组件乃至不同的应用之间传递消息。
- 两种注册方式:
- 静态注册:在
AndroidManifest.xml中注册,不需要启动应用即可接收广播。 - 动态注册:通过
Context.registerReceiver()&Context.unRegisterReceiver(),必须要应用启动才能注册并接收广播。
- 静态注册:在
- 使用:通过
Intent来发送广播:Intent intent = new Intent("xxx"); sendBroadcast(intent); - 四种广播类型:
- 普通广播。
- 有序广播。
- 本地广播。
- 粘性广播。
传送门:Android四大组件之BroadcastReceiver
五、ContentProvider 内容提供器
- 类型:共享型组件。
- 作用:向其他组件乃至其他应用共享数据。
- 使用:
- 需要在
AndroidManifest.xml中注册。 - 无需借助
Intent启动。
- 需要在
- CRUD操作:
-
insert():添加数据。 -
update():修改数据。 -
delete():删除数据。 -
query():查询数据。
-