|
本帖最后由 liu 于 2018-12-10 11:52 编辑
四大组件简介
Android四大基本组件:Activity、BroadcastReceiver(广播接收器)、ContentProvider(内容提供者)、Service(服务)
一、Activity
一个Activity通常就是一个单独的窗口,相当于手机屏幕,主要用于与用户交互,Activity之间通过Intent进行通信,并且要在AndroidManifest.xml配置文件中声明
二、BroadcastReceiver(广播接收器)
1、你的应用可以使用它对外部事件进行过滤,只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。然而,它们可以启动一个activity或serice来响应它们收到的信息,或者用NotificationManager来通知用户。通知可以用很多种方式来吸引用户的注意力,例如闪动背灯、震动、播放声音等。一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息
2、广播接收者的注册有两种方法:动态注册和AndroidManifest文件中进行静态注册
3、动态注册广播接收器特点是当用来注册的Activity关掉后,广播也就失效了。静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着的。也就是说哪怕app本身未启动,该app订阅的广播在触发时也会对它起作用
三、ContentProvider(内容提供者)
1、ContentProvider是Android提供的第三方应用数据的访问方案,主要用于在不同应用程序之间实现数据共享的功能
2、只有需要在多个应用程序间共享数据是才需要内容提供者。例如,通讯录数据被多个应用程序使用,且必须存储在一个内容提供者中,它的好处是统一数据访问方式
3、使用URI来唯一标识其数据集,这里的URI以content://作为前缀,表示该数据由ContentProvider来管理
四、Service(服务)
Service是一段长生命周期的,没有用户界面的程序,适合去执行那些不需要和用户交互而且还要长期运行的任务
两种启动方式:
1、Context.startedService:由其他组件调用startService()方法启动,其生命周期与启动它的组件无关,即使启动服务的组件被销毁它也可以在后台无限期运行,停止的话需要调用stopSelf()方法或者由其他组件调用stopService()方法
2、Context.startedService:调用者与服务绑定在了一起,调用者一旦退出,服务也就终止
注意:4大基本组件都需要在AndroidManifest文件中进行配置,注册后才能使用
|
Android, 四大组件, activity, Service, ContentProvider, Android, Service, Android, Service, Android, Service, Android, Service, Android, Service
|