第一章
1.Android系统架构
Linux内核层->系统运行库层:底层驱动
系统运行库层->应用框架层:C/C++库,虚拟机
应用框架层->应用层:API
2.四大组件
四大组件 | 功能 |
---|---|
活动(activity) | 所有app的门面,所看到的东西都放在活动中 |
服务(service) | 后台运行,即使退出应用,仍然可以继续运行 |
广播接收器(broadcast receiver) | 允许APP接受各处广播信息或者发出广播信息 |
内容提供器(content provider) | 提供APP之间共享数据 |
3.项目中资源
res目录:
- 所有以mipmap开头的文件夹都是用来存放应用图标的(多个文件夹是为了存放不同分辨率的版本)
- 所有以values开头的文件夹都是用来放字符串,样式,颜色等配置的
- layout文件夹是用来放布局文件的
两种方式调用xml字符串引用
R.string.app_name
@string/app_name
4.详解build.gradle文件
Gradle是一个非常先进的项目构建工具
使用DSL来声明项目配置
其中,
-
最外层build.gradle文件
- 声明jcenter()代码托管仓库
- classpath声明一个Gradle插件
-
app目录下build.gradle文件
- apply plugin 可以选择
- com.android.application 应用程序模块
- com.android.library 库模块
- compileSdkVersion 24表示使用Android7.0系统SDK
- buildToolsVersion用于指定项目构建工具的版本
- defaultConfig闭包:
- applicationId 项目包名
- minSdkVersion 指定项目最低兼容版本,15表示最低兼容Android4.0
- targetSdkVersion 表示在该目标版本上做过充分的测试
- versionCode 用于指定项目版本号
- versionName 用于制定项目版本名
- buildTypes闭包
- minifyEnabled 指定是否对项目代码使用混淆
- true 混淆
- false 不混淆
- proguardFiles 指定混淆时使用的规则文件
- minifyEnabled 指定是否对项目代码使用混淆
- dependencies闭包
- compile filetree 本地依赖声明
- apply plugin 可以选择
5.Log
- Log.v() 用于打印最为琐碎意义最小的日志信息。
- Log.d() 用于打印一些调试信息。
- Log.i() 用于打印一些比较重要的数据。
- Log.w() 用于打印一些警告信息。
- Log.e() 用于打印程序中的错误信息。
Log.d("类名","想要打印的具体内容");
网友评论