四大组件

学 android 也有快一年了,打算好好梳理下自己学过的知识,方便巩固、复习


Android 四大组件


Android四大组件 --- Activity

生命周期:onCreate() -> onStart() - > onResume() -> onPause() -> onStop() -> onDestroy()

  1. Activity与Fragment生命周期关系
  2. Activity与menu创建先后顺序

  3. Activity的启动模式

详情请参照 :点击跳转 https://blog.csdn.net/qq_43377749/article/details/90716664


Android四大组件 --- Service

调用者和service在同一个进程里,所以运行在主进程的main线程中。所以不能进行耗时操作,可以采用在service里面创建一个Thread来执行任务。service影响的是进程的生命周期,讨论与Thread的区别没有意义。
任何 Activity 都可以控制同一 Service,而系统也只会创建一个对应 Service 的实例

三种类型:

  1. 普通 Service
  2. RomateService
  3. IntentService

基本的 Service :点击跳转 https://blog.csdn.net/qq_43377749/article/details/90727638

RemoteService : 点击跳转 https://blog.csdn.net/qq_43377749/article/details/90740356


Android四大组件 --- BroadcastReceiver

广播被分为两种不同的类型:“普通广播(Normal broadcasts)”和“有序广播(Ordered broadcasts)”。普通广播是完全异步的,可以在同一时刻(逻辑上)被所有接收者接收到,消息传递的效率比较高,但缺点是:接收者不能将处理结果传递给下一个接收者,并且无法终止广播Intent的传播;然而有序广播是按照接收者声明的优先级别(声明在intent-filter元素的android:priority属性中,数越大优先级别越高,取值范围:-1000到1000。也可以调用IntentFilter对象的setPriority()进行设置),被接收者依次接收广播。如:A的级别高于B,B的级别高于C,那么,广播先传给A,再传给B,最后传给C。A得到广播后,可以往广播里存入数据,当广播传给B时,B可以从广播中得到A存入的数据。

具体使用-》 点击跳转-》 https://blog.csdn.net/qq_43377749/article/details/90739370


Android四大组件 --- ContentProvider

contentprovider是android四大组件之一的内容提供器,它主要的作用就是将程序的内部的数据和外部进行共享,为数据提供外部访问接口,被访问的数据主要以数据库的形式存在,而且还可以选择共享哪一部分的数据。这样一来,对于程序当中的隐私数据可以不共享,从而更加安全。contentprovider是android中一种跨程序共享数据的重要组件。

关于 contentprovider 暂时还没有左总结,打算以后复习好 SQLite 时一起讲,所以这里用文字描述下我个人的理解

首先我觉得 contentprovider 这东西可以粗略的分为两类:

  1. 系统自带 contentprovider
  2. 自定义 contentprovider

系统自带 contentprovider

顾名思义,这类 contentprovider 是系统自带的,就好比 相册 音频 通讯录 这些由系统提供的信息,系统已经内置了 contentprovider 我们只需要进行调用就行,比如相册这个:如何从相册读取图片

Android 入门知识点梳理之一 四大组件_第1张图片


另一种就是自定义的 ContenProvider 对于这种 ContenProvider 我觉得使用最经常的地方就在于本地数据库的连接,我们经常需要是我们的应用与 Android 内置数据库进行交互,使用方法也很明了

  1. 定义一个 MyContentProvider 类继承 ContenProvider
  2. 在 Mainfest.xml 中注册这个 ContenProvider
  3. 重写 ContenProvider 中 delete insert update ... 等方法

我打算在总结 SQLite 时也好好归纳下,这种用法的要点和注意事项,如果大家对 ContenProvider 的使用很感兴趣,也可以看看这篇博客,写得非常详尽:点击跳转 https://www.jianshu.com/p/f5ec75a9cfea


四大组件大致就介绍到这里,如果对大家有所帮助,欢迎点赞呦~ 么么哒~~

更多相关文章

  1. android 四大组件之Service
  2. 使用SharedPreferences存储和读取数据
  3. Android:Content Provider数据共享
  4. android中usb数据通信速率慢问题解决办法
  5. Android sqlite 数据库操作
  6. Android 自定义Listview 如何绑定Sqlite数据库数据
  7. Android的数据存储
  8. Android APN的设置问题 默认“已起用数据” 关闭

随机推荐

  1. Android知识体系总结之Android部分Activi
  2. android中的基本控件
  3. Android对SD卡进行读写
  4. Android之Handler用法总结
  5. Android异步处理二:使用AsyncTask异步更新
  6. Android(安卓)TextView 文字居中
  7. Android——SharedPreferences
  8. android中的数据库——学习
  9. Android(安卓)shell 系统命令
  10. android常用框架