栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > 架构设计

Android学习笔记(一)

架构设计 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android学习笔记(一)

1. Android系统架构

Android大致可以分为四层架构:Linux内核层、系统运行库层、应用框架层、应用层。

  • Linux内核层:Android系统基于Linux内核,这一层为Android设备的硬件提供驱动,如显卡驱动、音频驱动、相机驱动、蓝牙驱动、WiFi驱动、电源管理等。
  • 系统运行库层:通过一些C/C++库为Android提供特性支持。如SQLite提供数据库支持,OpenGL提供3D绘图支持,Webkit库提供浏览器内核支持。
  • 应用框架层:提供构建应用程序时的API。
  • 应用层:安装在手机上的应用程序属于这一层。

2. Android应用开发特色 1. 四大组件

Android系统四大组件分别是活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供器(Content Provider)。

在Android应用中看得到的东西都放在活动中。

服务在后台运行,即使用户退出了应用,服务仍可以运行。

广播接收器允许应用接收来自各处的广播信息,如电话、短信等,开发的应用同样可以向外发出广播信息。

内容提供器为应用程序之间共享数据提供了可能,比如想要读取电话簿中的联系人,就需要通过内容提供器实现。

2. 丰富的系统控件

Android系统提供了丰富的系统控件,同样也支持定制控件。

3. SQLite数据库

Android自带轻量级、运算速度极快的嵌入式关系型数据库。支持标准SQL语法,同时还提供了封装好的API供开发者调用。

4. 强大的多媒体

Android提供了丰富的多媒体服务,如音乐、视频等,并都可以在程序中通过代码控制。

5. 地理位置定位

Android设备内置GPS,支持定位功能。


2. 活动(Activity) 2.1.1 返回栈

Android使用任务(Task)管理活动,一个任务就是一组存放在栈里的活动集合,这个栈称为返回栈。

图2-22展示了返回栈如何管理活动出入栈操作。

2.1.2 活动状态

活动在生命周期中最多可能有4种状态。

  1. 运行状态,活动位于栈顶。
  2. 暂停状态,活动不在栈顶,但仍然可见。
  3. 停止状态,活动不在栈顶,并且完全不可见。
  4. 销毁状态,活动在返回栈中被移除。
2.1.3 活动生存期

Activity类中有7个回调方法,覆盖了活动的整个生命周期。

  • onCreate()。每个活动中都重写这个方法,在活动第一次被创建时调用。需要在这个方法中完成活动的初始化操作,如加载布局、绑定事件。
  • onStart()。这个方法在活动由不可见变为可见的时候调用。
  • onResume()。这个方法在活动准备好和用户进行交互的时候调用。此时的活动一定位于返回栈的栈顶,并且处于运行状态。
  • onPause()。这个方法在系统准备去启动或者恢复另一个活动的时候调用。
  • onStop()。这个方法在活动完全不可见的时候调用。
  • onDestroy()。这个方法在活动被销毁之前调用,之后活动的状态将变为销毁状态。
  • onRestart()。这个方法在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了。

除onRestart()方法外,其他方法两两相对,从而活动分为3种生存期。

  • 完整生存期。活动在onCreate()方法和onDestroy()方法之间所经历的,就是完整生存期。
  • 可见生存期。活动在onStart()方法和onStop()方法之间所经历的,就是可见生存期。
  • 前台生存期。活动在onResume()方法和onPause()方法之间所经历的就是前台生存期。

图2-23为官方提供的活动生命周期示意图。

2.1.4 活动启动模式

启动模式一共有4种,standard、singleTop、singleTask和singleInstance, 可以在AndroidManifest.xml中通过给标签指定android:launchMode属性来选择启动模式。


standard

活动的默认的启动模式,每当启动一个新活动,它就会在返回栈中入栈,并处于栈顶位置。系统不会在乎新活动是否已经在返回栈中存在,每次启动都会创建一个新的实例。

standard模式原理示意图:


singleTop

启动活动时,如果栈顶活动就是该活动,则直接使用它,不需要创建新的实例。

singleTop模式的原理示意图:


singleTask

启动活动时,都会在返回栈中检查是否存在该活动的实例,如果发现存在直接使用该实例,并把在这个活动之上的活动全部出栈,如果没有发现就会创建一个新的活动实例。

singleTask模式的原理示意图:


singleInstance

指定为singleInstance模式的活动会启用一个新的返回栈来管理这个活动。在这种模式下会有一个单独的返回栈管理这个活动,不管是哪个应用程序来访问这个活动,都共用同一个返回栈,解决了共享活动实例的问题。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/912617.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号