文章目录
1.1 Android 简介
1.1.2 Android发展历史
- 安卓的代号命名是从E开始按顺序编号的
1.1.3 Android的体系架构
- 应用程序层 :安装的APP所在的一层
- 应用程序框架层:提供构建应用程序时的API
- 核心类库:包含系统库和Android运行时的核心类库
- Linux内核层:为硬件提供底层驱动
1.1.4 Dalvik虚拟机
- 安卓的主要开发语言是Java,通过Dalvik虚拟机来运行Java程序,将class文件转换成dex文件,进一步优化成为odex文件
注:在AbdroidManifest.xml下设置一下标签,运行时将首先启动
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
1.4 Android程序结构
- app:存放代码和资源等内容
- libs:存放第三方包
- src/androidTest:存放调试代码文件
- src/main/java:存放程序的代码文件
- src/res:存放资源文件
- src/main/AndroidManifest.xml:整个程序的配置文件,配置程序所需权限和注册程序所需的四大组件
- app/build.gradle:App的gradle的构建脚本
- local.properties:指定安卓应用所用的SDK路径
- setting.gradle:配置Android程序中使用到的子项目(Moudle)
1.5 资源的管理与使用
1.5.1 图片资源
图片资源包括扩展为.png、.jpg、.gif、.png等的文件,根据用途不同可以将这些图片分为应用图标资源和界面中使用的图标资源,应用图标资源放在mipmap开头的文件夹中,界面中使用的图片资源放在drawable中
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6BO7pBsS-1647790342227)(https://gitee.com/zhang-kun-mhduiy/blogslmgs/raw/master/img/%E9%98%BF%E7%93%A6%E8%BE%BE.jpg)]
调用方式
-
Activity中
getResoures().getDrawable(R.mipmap.ic_launcher); getResoures().getDrawable(R.drawable.ic_launcher);//调用在drawable中的ic_launcher中的图标文件
-
XML中
@mipmap/ic_launcher
1.5.2 主题和样式资源
主题
调用主题资源可以改变窗体的样式,对整个应用程序或是一个Activity具有全局性的影响
主题资源第一在res/values目录下的styles.xml或者themes.xml
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.MyApplication" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/purple_700</item>
<item name="colorOnPrimary">@color/white</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
</resources>
<style></style>
标签用于定义主题,其name属性用于设置主题的名字
<item></item>
标签用于设置主题的样式
若要调用主题文件,可以在AndroidMainifest.xml中设置
android:theme = "@style/AppTheme"
1.5.3 布局资源
res/layout
创建第一个Android程序的时候会在此文件夹中生成布局资源文件activity_main.xml
调用方式
Activity
setContentview(R.layout.activity_main);
XML
<include layout="@layout/activity_main"/>
1.5.4 字符串资源
res/strings.xml中定义字符串
<resources>
<string name="app_name">My Application</string>
<string name="tv_text1">你好,我是文字</string>
</resources>
注:根元素resources只能有一个
调用方式
Activity
getResources().getString(R.string.app_name);
XML
@string/app_name
1.5.5 颜色资源
颜色资源定义在res/value/colors.xml中
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="purple_200">#FFBB86FC</color>
<color name="purple_500">#FF6200EE</color>
<color name="purple_700">#FF3700B3</color>
<color name="teal_200">#FF03DAC5</color>
<color name="teal_700">#FF018786</color>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
</resources>
调用方法类似,运用getColor( )方法
定义颜色值
Android中颜色由RGB和Alpha表示
#ARGB->#8f00
表示半透明的红色,Alpha通道可以省略
1.5.6 尺寸资源
res/values/dimens.xml
没有可以在此位置新建xml文件
<resources>
<dimen name="...">16dp</dimen>
</resources>
调用方法类似,调用getDimension( )方法
尺寸单位
- px:像素
- dp:设备独立像素,按比例缩放
- sp:比例像素,主要处理字体的大小,与dp类似
- in:英寸
- pt:磅
1.6 程序调试
调试方法有两种:单元调试和Logcat(日志控制台)
1.6.1 单元测试
表示对最小的功能模块进行调试
- Android单元测试:需要连接Android设备,速度比较慢,适合调用安卓API的单元测试
- Junit单元测试:不需要依赖Android设备,只适合对Java代码功能进行测试
1.6.2 Logcat的使用
Logcat是Android的命令行工具,用于获取程序从启动到关闭的日志信息
Log输出的内容分为六个级别由低到高分别是(后面是对应的静态方法)
- Verbose-Log.v()
- Debug-Log.d()
- Info-Log.i()
- Warning-Log.w()
- Error-Log.e()
- Assert-Log.wtf()
右上角可以设置日志过滤器
