创建第一个Android项目

时间:2021-07-27 09:16:26
目录

创建第一个Android项目

创建HelloWorld项目

选择模板

在Android Studio的欢迎界面点击Start a new Android Studio project,会打开一个选择模板的界面,如下图所示:

创建第一个Android项目

选择模板界面的英文翻译

英文 翻译
Phone and Tablet 手机和平板电脑
Wear OS 可穿戴智能设备
TV 电视
Android Auto 安卓汽车
Android Things 物联网和智能设备
Empty Activity 空活动

这里我们不仅可以选择创建手机和平板类型的项目,还可以选择创建可穿戴设备、电视,甚至汽车等类型的项目。不过手机和平板才是本书讨论的重点,其他类型的项目我们就不去关注了另外,Android Studio还提供了很多种内置模板,不过由于我们オ刚刚开始学习,用不着这么多复杂的模板,这里直接选择“ Empty Activity”,创建一个空的Activity就可以了。

配置项目

继续点击Next,就会进入配置项目的界面,如下图所示:

创建第一个Android项目

配置项目界面英文翻译及解释

英文 翻译
Configure you project 配置您的项目
Name (项目)名称
Package name (项目)包名
Language (编程)语言
Minimum API level 项目最低兼容版本
Your app will run on approximately xxx% of devices 您的应用程序可以在大约xxx%的设备上运行
This project will support instant apps 这个项目将支持即时应用
Previous 上一级

配置项目界面的注意事项

Name的命名规范

Name是项目名称,应用安装到手机之后会在手机上显示该名称。应用名称一开始显示的是My Application,这个名称含有空格,我直接把它改为MyApplication,这样一来就非常符合Java关键字规范(Kotlin也是基于Java写的),还有一个原因后面再说。

Package name的唯一性

Android系统就是通过包名来区分不同应用程序的,因此包名一定要具有唯一性。

Android Studio会根据应用名称自动帮我们生成合适的包名,如果你不想使用默认生成的包名,也可以自行修改。

选择Minimum API level

Minimum API level,我们选择Your app will run on approximately 100% of devices这一项API15,也意味着我们的应用程序可以在任何的设备上都能运行。

Save location的常见错误
你的项目路径包含非ASCII字符
Your project path contains non-ASCII characters.
你的项目路径包含非ASCII字符

这种情况就像上面的截图一样,因为我计算机的用户名是黄子涵,所以默认就会出现这种情况,根据上面的提示,非ASCII字符,那啥是ASCII字符呢?一般来说,就是阿拉伯数字和大小写英文字母,这里我的是中文字符,所以就会报错,只要路径中是英文字母就好了。

项目位置不应该包含空格,这可能会导致问题NDK工具
project location should not contain whitespace ,as this can cause problems with the NDK tools
项目位置不应该包含空格,这可能会导致问题NDK工具

这种情况就像下面的截图一样,大概意思就是我们项目路径不能有空格。这也是我上面把应用名称去掉空格的原因,我在AndroidStudioProjects文件夹下新建一个,直接把应用名称复制黏贴过去重命名,并把AndroidStudioProjects整个文件夹放到我的E盘下:

创建第一个Android项目

项目创建成功

点击finish就进入项目编辑界面,如下图:

创建第一个Android项目

项目界面菜单栏英文翻译

英文 翻译
File 文件
Edit 编辑
View 视图
Navigate 导航
Code 代码
Analyze 分析
Refactor 重构
Build 构建
Run 运行
Tools 工具
VCS 编译型Verilog模拟器
Window 窗口
Help 帮助

创建和启动模拟器

创建模拟器

由于Android Studio自动为我们生成了很多东西,你现在不需要编写任何代码, 项目就已经可以运行了。但是在此之前还必须要有一个运行的载体,可以是一部 Android手机,也可以是Android模拟器。

那么我们现在就来创建一个Android模拟器,观察Android Studio工具栏中的图标,下图红色划线部分的图标就是用来创建和启动模拟器的:

创建第一个Android项目

当我们点击红色划线部分的图标,会弹出Android Virtual Devices Manager安卓模拟器管理)的窗口:

创建第一个Android项目

查看模拟器细节

目前我们的模拟器列表中有一个模拟器,鼠标移到模拟器上,右键点击,选择View Details查看模拟器的细节:

项目名称 相关信息
Name Nexus_5X_API_30_x86
CPU/ABI Google APIs Intel Atom (x86)
Path C:\Users\黄子涵.android\avd\Nexus_5X_API_30_x86.avd
Target google_apis [Google APIs] (API level 30) Skin: nexus_5x SD
Card 800M

删除现有的模拟器

但是这个模拟器和我的手机不一样,所以我们要先把这个模拟器删除,鼠标移到模拟器上,右键点击,选择delete,这样现有的模拟器就删除了,如下图:

创建第一个Android项目

创建模拟器

删除模拟器之后,我们现在需要新建一个模拟器,点击Create Virtual Device创建模拟器)按钮就可以,如下图:

创建第一个Android项目

新建硬件配置文件

这里有很多种设备可供我们选择,不仅能创建手机模拟器,还可以创建平板、手表、电视等模拟器。

但是,我在上面没有发现一个手机模拟器和华为荣耀9X的配置一样的,所以我们需要点击New Hardware Profile新建硬件配置文件),进入硬件配置界面,如下图:

创建第一个Android项目

查看手机硬件配置信息

首先我们要对调试的手机有所了解,我这里的华为荣耀9X,打开设置,下拉到最底部,点击关于手机里面查看手机的相关信息如下表:

名称 信息
设备名称 HONOR 9X
Android版本 10
运行内存 6.0GB
屏幕 2340*1080

但是没有找到手机屏幕尺寸大小,百度搜索一下,是6.59英寸

配置硬件文件信息

在这里我们可以对模拟器的一些配置进行确认,比如说指定模拟器的名字、分辨率、横竖屏等信息,如果没有特殊需求的话,全部保持默认就可以了。

按照我们上面找到的硬件配置信息进行填写,填写完成之后,如下图:

创建第一个Android项目

成功新建硬件文件

然后点击Finish完成模拟器的创建,然后会弹出如下图的窗口,我们可以在硬件文件列表上看到我们的模拟器,就证明我们已经成功新建硬件文件:

创建第一个Android项目

选择系统镜像

接着点击next进入select a system image选择一个系统镜像)界面,这里在上面我们已经查看调试模拟器的硬件信息,华为荣耀9X的Android操作系统的版本是Android 10,但是我发现这个Android 10还要下载,如下图:

创建第一个Android项目

鼠标移动到Android 10那行,点击蓝色字体DownLoad进入同意许可证界面,点击acceptj选择接受许可证,再点击next,如下图:

创建第一个Android项目

点击next就会进入一个Component Installer组件安装器)界面,表示组件正在下载:

创建第一个Android项目

等待下面Downloading进度条达到100%,点击finish重新回到select a system image选择一个系统镜像)界面,这时候我们发现在Android 10的那一行已经没有Download蓝色字体了,就表示系统镜像已经下载成功,如下图所示:

创建第一个Android项目

鼠标点击你要选择的Android操作系统版本的那一行,选中之后然后再点击next进入检查模拟器配置界面,:

创建第一个Android项目

下载HAXM(硬件加速执行管理器)

在这里我们可以看到Recommendation建议)这里还没有下载HAXM,我们点击蓝色字体Install HAXM进入HAXM下载页面,如下图所示:

创建第一个Android项目

没有别的需求选择recommend建议的)就行了,再点击next进入调用安装程序界面,我们会看到它Installing(正在下载),等到我们看到successfullyDone就表示硬件加速执行器已经下载完成了,如下图所示:

创建第一个Android项目

创建第一个Android项目

等它下载完成之后,我们点击finish重新回到检查模拟器配置界面,如果我们还发现在Recommendation建议)那里还有蓝色字体Install HAXM,没有关系只要我们上一步显示successfullyDone就表示硬件加速执行器已经下载完成了,这时候我们需要重新启动一次项目,把上面的流程重新走一遍,等我们再回到检查模拟器配置界面,会发现红色部分已经没有蓝色字体Install HAXM,如下图:

创建第一个Android项目

点击finish之后,我们会发现它弹出一个进度条,显示Creating Android Virtual Device(正在创建安卓模拟器),如下图:

创建第一个Android项目

等到正在创建安卓模拟器的进度条完成之后,然后再回到Android Virtual Devices Manager安卓模拟器管理)界面,就会看到模拟器列表中已经存在一个创建好的名叫HONOR 9X模拟器设备了,如下图:

创建第一个Android项目

点击 Actions栏目中最左边的三角形按钮即可启动模拟器。模拟器会像手机一样,有一个开机过程,启动完成之后的界面,如下图所示:

创建第一个Android项目

创建和启动模拟器过程中的常见错误

新建模拟器不能启动

开启虚拟化设备
进入BIOS

开机——出现Lenovo字样—— 迅速按F2或Fn+F2。此种方法试了很多次并未找到BIOS。

我就使用这种方法就进入BIOS。

在BIOS开启虚拟化设备

进入BIOS——按键盘向右的箭头找到configuration选项—— 按键盘向下的箭头找到Intel virtual technology—— 按Fn+F5将disable改成enable——按fn+F10保存更改—— 回车“YES”——电脑自动重启——完成。

在我这里,Intel virtual technology已经是enable,所以不是开启虚拟化设备的问题。

安装硬件加速执行管理器

在Android的SDK文件夹下有个可执行文件,可以直接点击安装,我这里的地址是:

F:\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager

但是,我在检查模拟器配置界面早就安装好了,所以也应该不是HAXM的问题。

设置Android相关的系统变量

这个我是怎么发现的呢?是我开启模拟器之后,发现事件日志报错,事件日志在主界面的这个位置:

创建第一个Android项目

在事件日志报错代码,有这样一行代码:

Emulator: PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT

怪不得打不开模拟器,原来是没有设置AVD系统路径,在这里主要设置两个系统变量:

  • ANDROID_HOME:这是sdk的路径
  • ANDROID_SDK_HOME:这是avd的路径

我的电脑是Win10系统,就拿我的电脑来举例,其他版本的系统需要百度一下。在桌面找到我的电脑或者此电脑,右键点击选择属性,会直接进入这个路径:

控制面板\系统和安全\系统

在系统窗口的左侧栏找到高级系统设置,如下图:

创建第一个Android项目

点击高级系统设置,接着会弹出系统属性的窗口,选择高级那一项,选择下方的环境变量,如下图:

创建第一个Android项目

环境变量的窗口下面的系统变量那一栏中点击新建,在弹出的新建系统变量的窗口里填入以下信息,对于变量值可以直接复制地址栏的地址过来,也可以通过浏览目录或者浏览文件进行添加,我的设置是这样的:

变量名 变量值 说明
ANDROID_HOME F:\Android\Sdk 这是sdk的安装路径
ANDROID_SDK_HOME E:\AndroidAvd 这是avd文件夹所在路径

填写完成之后,重启一下Android Studio就可以了。

安卓模拟器管理占用C盘内存

我们首先找到安卓模拟器安装的位置,在我的电脑里是安装在这个路径下:

C:\Users\黄子涵\.android\avd

一般来说,这个路径应该是这样的:

C:\Users\计算机用户名\.android\avd

因为我这里计算机用户名是黄子涵(在电脑开机之后,输入密码时显示的那个用户名),所以Users下一级目录是黄子涵。

其中的avd文件夹就是用来存放,模拟器镜像文件的。相当占用c盘空间。

这句话说的不大对,应该是模拟器的操作系统镜像文件有点大,比如我这里是:

创建第一个Android项目

一个Android 10差不多500MB,如果以后继续添加操作系统的话,这个肯定是大块头,所以必须把它挪到其他磁盘。

首先,我们点进去我们之前说的这条路径C:\Users\黄子涵.android\avd,现在这个路径下有一个AVD的文件夹和AVD的配置文件,格式像下面这样:

  • HONOR_9X_API_29.avd
  • HONOR_9X_API_29.ini

ini格式文件就是我们要修改的配置文件,点进去会发现这样的一小段代码:

avd.ini.encoding=UTF-8
path=C:\Users\黄子涵\.android\avd\HONOR_9X_API_29.avd
path.rel=avd\HONOR_9X_API_29.avd
target=android-29

path路径就是我们现在AVD存放路径,于是我到E盘新建一个存放AVD的文件夹,我直接存放在根目录下,还有这个文件夹命名为:AndroidAvd(这很符合Java的命名规范),我这样做的原因是,和我们之前的一个问题有关,文件夹路径不能包含空格和中文字符,所以我将要存放AVD的路径地址是:

E:\AndroidAvd

新建完存放AVD的文件夹之后,我们将原来AVD文件夹中的.avd文件夹移动到我们新建好存放AVD的文件夹中,过程如下图:

创建第一个Android项目

创建第一个Android项目

移动好.avd文件夹,将地址栏的地址复制好,开始修改ini配置文件中的path路径:

新建的AVD文件夹路径:

E:\AndroidAvd\HONOR_9X_API_29.avd
原来ini配置文件中path路径:

path=C:\Users\黄子涵\.android\avd\HONOR_9X_API_29.avd
修改好的ini配置文件中path路径:

path=E:\AndroidAvd\HONOR_9X_API_29.avd

最后,我们重新启动项目,点击AVD管理器进入Android Virtual Devices Manager安卓模拟器管理)界面,我们点击模拟器那行Actions部分中的倒三角形会弹出一个下拉菜单栏,我们选择show in disk在磁盘显示),就会弹出模拟器各类文件存放在磁盘的那个文件夹,,而这个文件夹就是我们刚刚新建的,这样就表示我们修改路径成功了,如下图

创建第一个Android项目