1.Android简介
1.1Android的体系结构
应用程序层 Applications:Home、Contacts…
应用程序框架层 Application Framework:Activity Manager…
核心类库层 Libraries:SGL、SSL… + Android Runtime:Core Libraries、Dalvik Virtual Machine
Linux内核层 Linux Kernel:Display Driver、Camera Driver…
1.2Dalvik虚拟机
功能:对对象生命周期管理、堆栈管理、线程管理、安全异常管理、垃圾回收等。
流程:Java源码使用JDK编译成class文件,Dx工具编译成dex文件,优化成odex文件
2.Android开发环境搭建
2.1Android Studio
2.1.1官网
https://developer.android.google.cn/
2.1.2步骤
下载Android Studio
安装Android Studio 注意:需勾选Android Virtual Device
导入配置/默认配置
2.2模拟器
Your Virtual Devices 中创建模拟器
选择设备(可自定义设备大小)
Select a system image 注意:Target版本与SDK一致
Android Virtual Device(AVD) 选择镜像
启动
2.3SDK
Android SDK 选择对应版本
Confirm Change确认
Default Settings中的SDK Tools下 勾选Android SDKBuild-Tools
Install…finished 安装成功
3.第一个Android应用
3.1开发流程
创建程序 | 1、创建名为Hello World的程序 2、指定包名为com.wanxi.helloworld |
---|---|
启动模拟器 | 点击工具栏中的【AVD Manager】标签启动模拟器 |
运行程序 | 点击工具栏中的运行按钮运行程序 |
3.2Android程序结构
app | 存放程序的代码和资源文件 |
---|---|
build.gradle | 程序gradle构建脚本 |
local.properties | 指定项目中所使用的SDK路径 |
settings.gradle | 配置在Android中使用的子项目(Moudle) |
3.3资源的管理与使用
3.3.1图片资源
图片资源:.png、.jpg、.gif、.png等
分类
应用图标资源:存放在mipmap文件夹中
界面中使用的图片资源:存放在drawable文件夹中
屏幕密度匹配规则
密度范围值 | mipmap文件夹 | drawable文件夹 |
---|---|---|
120-160dpi | mipmap_mdpi | drawable_mdpi |
160-240dpi | mipmap_hdpi | drawable_hdpi |
240-320dpi | mipmap_xdpi | drawable_xdpi |
320-480dpi | mipmap_xxdpi | drawable_xxdpi |
480-640dpi | mipmap_xxxdpi | drawable_xxxdpi |
3.3.1.1使用
1、通过Java代码调用图片资源
//调用mipmap文件夹中资源文件
getResources().getDrawable(R.mipmap.ic_launcher);
//调用以drawable开头的文件夹中的资源文件
getResources().getDrawable(R.drawable.icon);
2、在XML布局文件中调用图片资源
//调用mipmap文件夹中资源文件
@mipmap/ic_launcher
//调用以drawable开头的文件夹中的资源文件
@drawable/icon
3.3.2主题和样式资源
主题:包含一种或多种格式化属性的合集,在程序中调用主题资源可改变窗体的样式
主题资源定义位置:在res/values目录下的styles.xml文件中
定义主题资源的标签:
//定义主题
//设置主题样式
<item></item>
调用参照:3.3.1
3.3.3布局资源
布局资源:通常用于搭建程序中的各个界面
布局资源存放位置:res/layout文件夹中
调用布局资源的方式:3.3.1
3.3.4字符串资源
字符串:用于显示界面商的文本信息
字符串资源定义位置:res/values目录下的strings.xml中
字符串标签:
<string></string>
<resource>
<string name="app_name">字符串</string>
</resource>
调用方式:3.3.1
3.3.5颜色资源
颜色:用于显示控件的不同色彩效果
位置:res/values/colors.xml文件中
<color></color>
<resources>
<color name="colorPrimary">#3F51B5</color>
</resources>
调用方式:3.3.1
3.3.6补充说明
在Android中,颜色值由RGB(红、绿、蓝)三原色和一个透明度(Alpha)表示,颜色值必须以#开头,
“#”后面显示Alpha-Red-Green-Blue形式的内容。Alpha值可以省略,省略表示完全不透明。
一般定义:#RGB、#ARGB、#RRGGBB
Android支持的尺寸单位
px、dp、sp、in、pt、mm
3.3.7尺寸资源
尺寸:用于设置View的宽高和View之间的间距值
定义位置:res/values/dimens.xml文件中,如果没有,可自行创建
尺寸的标签:
<dimen></dimen>
<resources>
<dimen name="activity_horizontal_margin">16dp</color>
</resources>
调用:3.3.1
4.程序调试
4.1单元测试
4.1.1Junit单元测试
1、不需要依赖Android设备
2、速度快
3、适合只对Java代码功能进行单元测试
4.1.2单元测试使用
1、方法1
@RunWith 注解ExampleInstrumentedTest
@Test注解类中的方法
2、方法2
@Test注解类中的方法
4.2Logcat日志
4.2.1日志分级
级别 | Log类中的静态方法 | 信息说明 | 显示颜色 |
---|---|---|---|
Verbose | Log.v() | 全部信息 | 黑色 |
Debug | Log.d() | 调试信息 | 蓝色 |
Info | Log.i() | 一般信息 | 绿色 |
Warning | log.w() | 警告信息 | 橙色 |
Error | log.e() | 错误信息 | 红色 |
Assert | Log.wtf() | 断言失败后的错误信息 | 红色 |
4.2.2使用
静态方法:打印信息的标签、需要打印的信息
Log.v(“MainActivity”, “Verbose”);
Log.d(“MainActivity”,“Degug”);
Log.i(“MainActivity”,“Info”);
Log.w(“MainActivity”, “Warning”);
Log.e(“MainActivity”, “Error”);
Log.wtf(“MainActivity”,“Assert”);