Android基础知识 | 青训营

120 阅读3分钟

初识Android | 青训营笔记

这是我参与「第四届青训营」笔记创作活动的的第2天

Android基础组件

界面组件

  • Activity:(界面容器)用于前台交互、程序入口、布局容器
    • 生命周期

      • onCreate():创建时回调,一般在此处创建视图和绑定数据
      • onStart():已启动,即将进入前台
      • onResume():与用户开始交互,位于Activity栈顶
      • onPause():Actvity失去焦点或已暂停,Activity界面部分可见,下一个生命周期是onResume()或onStop()
      • onStop():Activity不再可见,下一个回调是onRestart()onDestory()
      • onRestart():重启已停止的Activity,下一个回调是onStart()
      • onDestory():销毁Actvity,释放该Activity的所有资源
      • onSaveInstanceState():在非正常关闭时回调,用于保存数据,不支持持久化数据
      • onRestoreInstanceState()/onCreate():用于恢复数据
    • 启动模式(android:launchMode)

      • standard:默认模式,允许重复;
      • singleTop:不允许重复;
      • singleTask:不允许同一个栈内重复;
      • singlestance:整个系统不允许重复;
    • Fragment:未解;

      • 图示如下:(打开页面:1-2-3;关闭页面:4-5-6;)

服务组件:

  • Service:
    • Service 一种可以在后台执行长时间运行操作而没有用户界面的应用组件,需要在AndroidManifest.xml配置相关信息。

    • ServiceActivity一样,是Android的四大组件之一。Activity是看得见的,而Service则是看不见的。看得见的Activity一般承担显示界面、控制的功能,而Service则承担后台任务。

    • 生命周期

      • onCreate():和ActivityonCreate()方法一样,是第一个被执行的生命周期方法,可以在这做一些初始化操作,并且只会被执行一次;哪怕会启动多次服务或绑定多次服务。启动和绑定状态均会经历该状态

      • onStartCommand():调用startService()启动服务后,将会执行该方法。一旦执行此方法,服务即会启动并可在后台无限期运行。如果实现此方法,则在服务工作完成后,需要通过调用stopSelf()stopService()来停止服务。调用一次startService,将会调用一次该方法。

      • onBind():调用bindService()绑定服务后,将会执行该方法。在该方法的实现中,必须通过返回IBinder提供一个响应,供客户端用来与服务进行通信。

      • onUnbind():当所有绑定的客户端解除绑定时,系统将会调用该方法。

      • onDestory():当服务不再使用且将被销毁时,系统将调用此方法。服务应该实现此方法来清理所有资源。当组件需要停止一个启动服务时,需要调用stopService();解除绑定服务时,需要调用unbindService()

广播组件

  • Broadcast:(是指在组件之间传播数据(Intent)的一种机制),有如下几种广播:

    • 系统广播:Android中内置了多个系统广播:只要涉及到手机的基本操作(如开机、网络状态变化、拍照等等),都会发出相应的广波,每个广播都有特定的Intent - Filter(包括具体的action)

    • 普通广播:特点是完全异步,sendBroadcast()方法来发送,通过onReceive方法接收。

    • 有序广播:用sendOrderedBroadcast发送,

数据组件

  • ContentProvider:(是指作为一个平台,提供数据的共享,并且提供数据的增删改查功能。主要应用于应用之间的数据共享场景)

意图组件

  • Intent:(是指在一个组件中启动App中的另一个组件或者是启动另一个App的组件)

Android通信组件

  • Handler
  • Binder 还未理解,后续更新。