Android系统架构
linux内核层
为设备的各种硬件提供了底层的驱动,如显示驱动等
系统运行库层
通过C/C++库来为android提供主要的特性支持。如SQLiteku提供的数据库支持,penGl|ES库提供3D绘图的支持,Webkit库提供了浏览器内核的支持等;还提供一些核心库,允许开发者使用java语言编写android程序;存在Dalvik虚拟机(5.0系统后改为ART运行环境)是专门为移动设备定制的,他针对手机内存、CPU性能等情况进行了优化处理。
应用框架层
提供构建应用程序时可能用到的更重API
应用层
各种应用程序
Android四大组件
函数 | 描述 |
---|---|
onCreat() | 一个Activity启动后第一个被调用的函数,常用来在此方法中进行Activity的一些初始化操作。例如创建View,绑定数据,注册监听,加载参数等。 |
onStart() | 当Activity显示在屏幕上时,此方法被调用但此时还无法进行与用户的交互操作。 |
onResume() | 这个方法在onStart()之后调用,也就是在Activity准备好与用户进行交互的时候调用,此时的Activity一定位于Activity栈顶,处于运行状态。 |
onPause() | 这个方法是在系统准备去启动或者恢复另外一个Activity的时候调用,通常在这个方法中执行一些释放资源的方法,以及保存一些关键数据。 |
onStop() | 这个方法是在Activity完全不可见的时候调用的。 |
onDestroy() | 这个方法在Activity销毁之前调用,之后Activity的状态为销毁状态。 |
onRestart() | 当Activity从停止stop状态恢进入start状态时调用状态。 |
两大视图
主要结构目录
bulid
编译时自生成文件
libs
第三方jar包,会被自动添加到构建路径中去
java
java代码
res
项目中使用的所有资源,drawable存放图片,layout存放布局,values存放字符,mipmap存放图标
Manifest
AndroidManifest.xml配置文件,程序中定义的四大组件都需要在这个文件里注册,另外这个文件中还可以给应用程序添加权限声明
bulid.gradle
项目构建工具,通常有两个bulid.gradle,一个是项目级一个是app级
com.android.application
应用程序模块
com.android.library
库程序模块
区别:一个是可以直接运行的,一个只能作为代码库依附于别的应用程序模块来运行