前言
新建项目
一、新建工程
-
1、New Project
-
2、Empty Activity
-
3、命名
Name
:项目名;Package name
:项目包名(项目的唯一标识);Save location
:项目保存路径;Language
:项目开发语言;Minimum SDK
:项目的最低兼容版本,在低于此版本的设备上无法运行此程序。- 点击 Finish,Android Studio 会自动下载 JDK 和程序所需依赖库;
- 红色箭头指向的地方变成绿色的 app,说明所有依赖库下载完毕和编译项目完成;
-
4、运行
-
点击右边的绿色三角形 Run 图标运行程序;
-
自带模拟器
-
-
5、新建项目 注意点
Name
:项目名;Package name
:项目的包名(项目的唯一标识),项目的包名和项目名不需要一致;Save location
:项目的保存路径;Language
:项目的开发语言;Minimum SDK
:项目的最低兼容版本,在低于此版本的设备上无法运行此程序,比如这里选的是 API 24 Android 7.0,意思就是本程序只能运行在 Android 7.0 以上的手机,低于 7.0 的会提示无法安装该程序;- 点击
Finish
,Android Studio会自动下载JDK和程序所需依赖库;
二、项目工程结构
1. 整体结构
-
应用程序文件夹
-
Gradle 脚本文件夹
2. 文件分类
1)AndroidManifest.xml
-
程序清单;
-
xmlns:android
:定义 Android 命名空间,使得 Android 中各种标准属性能在文件中使用,提供了大部分元素中的数据; -
package
:本应用内 Java 主程序包的包名,也是一个应用进程的默认名称; -
应用进程:在 Android 开发中,一个应用进程是指一个独立运行的应用程序实例;每当在 Android 设备上启动一个应用,操作系统会为该应用创建一个进程,用于执行应用的代码和管理其资源;
-
application
- 一个安卓应用必须包含一个 application 标签,声明了每一个应用程序的组件及其属性,例如,icon、label、permission 等);
-
allowBackup
:当 allowBackup 标志为 true 时,用户即可通过 adb backup 和 adb restore 来进行对应用数据的备份和恢复,可能会带来一定的安全风险; -
icon
:声明整个 APP 的图标; -
roundIcon
:同样声明整个 APP 的图标,圆形的图标,如果配置了此项,APP 安装在手机显示的就是圆形图标; -
label
:声明整个 APP 的名字; -
supportsRtl
:支持从右往左显示的布局; -
theme
:定义了一个默认的主题风格给所有的 Activity; -
Activity
:定义 APP 中的一个组件 Activity;name
: 该 Activity 的名字;screenOrientation
:该 Activity 的屏幕方向;intent-filter
:广播过滤器;action android:name
:指定程序入口 Activity;category android:name
:指定当前动作(Action)被执行的环境;
2)Java
-
存放源代码;
-
开发包:活动、服务、广播、内容提供者、数据库类
3)res
- 所有资源文件存放的目录;
drawable
(图像文件夹):程序里所有的图片、形状、动画;layout
(布局文件夹):每个 Activity 界面对应的布局文件;mipmap
:保留不同屏幕分辨率的图像;图片命名相同,区别在于不同分辨率;values
:定义程序中的 strings.xml(文字)、dimens.xml(大小)、colors.xml(颜色)、styles.xml(风格 ) 等;
4)build.gradle
- 项目编译和构建的配置;
- 通知项目、应用程序以及模块的创建;
三、项目运行流程
- 程序加载 ——> AndroidMainfest.xml ——> application标签 ——> android:name=“.MainActivity”(作为第一个 Activity 启动)——> 调用 onCreate 函数 ——> 设置视图 ——> 最终显示在屏幕上的页面
四、Gradle
-
Gradle 是项目自动化构建工具。帮助管理项目中的第三方依赖关系、项目编译、项目打包、项目部署等
-
文件类型
- 项目级别(
project
)文件:包含有关 gradle 的信息,gradle 版本、存储库,对于每个应用程序会有一个项目 gradle 文件; - 模块级别(
module
)文件;可以有一个也可以有多个;例如,构建一个天气应用程序,分别适用于移动设备、穿戴设备和电视,有三个模块 gradle 文件;包含构建模块的最低版本、最高版本、应用程序 IDE、所有依赖项 - 设置级别 (
settings
)文件;模块想要包含在编译;例如,只想编译移动模块,只需要爆剧哦 gradle 中的移动模块
- 项目级别(