创建第一个Android项目
创建第一个Android项目
创建HelloWorld项目
选择模板
在Android Studio的欢迎界面点击Start a new Android Studio project,会打开一个选择模板的界面,如下图所示:
选择模板界面的英文翻译
英文 | 翻译 |
---|---|
Phone and Tablet | 手机和平板电脑 |
Wear OS | 可穿戴智能设备 |
TV | 电视 |
Android Auto | 安卓汽车 |
Android Things | 物联网和智能设备 |
Empty Activity | 空活动 |
这里我们不仅可以选择创建手机和平板类型的项目,还可以选择创建可穿戴设备、电视,甚至汽车等类型的项目。不过手机和平板才是本书讨论的重点,其他类型的项目我们就不去关注了另外,Android Studio还提供了很多种内置模板,不过由于我们オ刚刚开始学习,用不着这么多复杂的模板,这里直接选择“ Empty Activity”,创建一个空的Activity就可以了。
配置项目
继续点击Next,就会进入配置项目的界面,如下图所示:
配置项目界面英文翻译及解释
英文 | 翻译 |
---|---|
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盘下:
项目创建成功
点击finish就进入项目编辑界面,如下图:
项目界面菜单栏英文翻译
英文 | 翻译 |
---|---|
File | 文件 |
Edit | 编辑 |
View | 视图 |
Navigate | 导航 |
Code | 代码 |
Analyze | 分析 |
Refactor | 重构 |
Build | 构建 |
Run | 运行 |
Tools | 工具 |
VCS | 编译型Verilog模拟器 |
Window | 窗口 |
Help | 帮助 |
创建和启动模拟器
创建模拟器
由于Android Studio自动为我们生成了很多东西,你现在不需要编写任何代码, 项目就已经可以运行了。但是在此之前还必须要有一个运行的载体,可以是一部 Android手机,也可以是Android模拟器。
那么我们现在就来创建一个Android模拟器,观察Android Studio工具栏中的图标,下图红色划线部分的图标就是用来创建和启动模拟器的:
当我们点击红色划线部分的图标,会弹出Android Virtual Devices Manager(安卓模拟器管理)的窗口:
查看模拟器细节
目前我们的模拟器列表中有一个模拟器,鼠标移到模拟器上,右键点击,选择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,这样现有的模拟器就删除了,如下图:
创建模拟器
删除模拟器之后,我们现在需要新建一个模拟器,点击Create Virtual Device(创建模拟器)按钮就可以,如下图:
新建硬件配置文件
这里有很多种设备可供我们选择,不仅能创建手机模拟器,还可以创建平板、手表、电视等模拟器。
但是,我在上面没有发现一个手机模拟器和华为荣耀9X的配置一样的,所以我们需要点击New Hardware Profile(新建硬件配置文件),进入硬件配置界面,如下图:
查看手机硬件配置信息
首先我们要对调试的手机有所了解,我这里的华为荣耀9X,打开设置,下拉到最底部,点击关于手机里面查看手机的相关信息如下表:
名称 | 信息 |
---|---|
设备名称 | HONOR 9X |
Android版本 | 10 |
运行内存 | 6.0GB |
屏幕 | 2340*1080 |
但是没有找到手机屏幕尺寸大小,百度搜索一下,是6.59英寸
配置硬件文件信息
在这里我们可以对模拟器的一些配置进行确认,比如说指定模拟器的名字、分辨率、横竖屏等信息,如果没有特殊需求的话,全部保持默认就可以了。
按照我们上面找到的硬件配置信息进行填写,填写完成之后,如下图:
成功新建硬件文件
然后点击Finish完成模拟器的创建,然后会弹出如下图的窗口,我们可以在硬件文件列表上看到我们的模拟器,就证明我们已经成功新建硬件文件:
选择系统镜像
接着点击next进入select a system image(选择一个系统镜像)界面,这里在上面我们已经查看调试模拟器的硬件信息,华为荣耀9X的Android操作系统的版本是Android 10,但是我发现这个Android 10还要下载,如下图:
鼠标移动到Android 10那行,点击蓝色字体DownLoad进入同意许可证界面,点击acceptj选择接受许可证,再点击next,如下图:
点击next就会进入一个Component Installer(组件安装器)界面,表示组件正在下载:
等待下面Downloading进度条达到100%,点击finish重新回到select a system image(选择一个系统镜像)界面,这时候我们发现在Android 10的那一行已经没有Download蓝色字体了,就表示系统镜像已经下载成功,如下图所示:
鼠标点击你要选择的Android操作系统版本的那一行,选中之后然后再点击next进入检查模拟器配置界面,:
下载HAXM(硬件加速执行管理器)
在这里我们可以看到Recommendation(建议)这里还没有下载HAXM,我们点击蓝色字体Install HAXM进入HAXM下载页面,如下图所示:
没有别的需求选择recommend(建议的)就行了,再点击next进入调用安装程序界面,我们会看到它Installing(正在下载),等到我们看到successfully、Done就表示硬件加速执行器已经下载完成了,如下图所示:
等它下载完成之后,我们点击finish重新回到检查模拟器配置界面,如果我们还发现在Recommendation(建议)那里还有蓝色字体Install HAXM,没有关系只要我们上一步显示successfully、Done就表示硬件加速执行器已经下载完成了,这时候我们需要重新启动一次项目,把上面的流程重新走一遍,等我们再回到检查模拟器配置界面,会发现红色部分已经没有蓝色字体Install HAXM,如下图:
点击finish之后,我们会发现它弹出一个进度条,显示Creating Android Virtual Device(正在创建安卓模拟器),如下图:
等到正在创建安卓模拟器的进度条完成之后,然后再回到Android Virtual Devices Manager(安卓模拟器管理)界面,就会看到模拟器列表中已经存在一个创建好的名叫HONOR 9X模拟器设备了,如下图:
点击 Actions栏目中最左边的三角形按钮即可启动模拟器。模拟器会像手机一样,有一个开机过程,启动完成之后的界面,如下图所示:
创建和启动模拟器过程中的常见错误
新建模拟器不能启动
开启虚拟化设备
进入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相关的系统变量
这个我是怎么发现的呢?是我开启模拟器之后,发现事件日志报错,事件日志在主界面的这个位置:
在事件日志报错代码,有这样一行代码:
Emulator: PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT
怪不得打不开模拟器,原来是没有设置AVD系统路径,在这里主要设置两个系统变量:
- ANDROID_HOME:这是sdk的路径
- ANDROID_SDK_HOME:这是avd的路径
我的电脑是Win10系统,就拿我的电脑来举例,其他版本的系统需要百度一下。在桌面找到我的电脑或者此电脑,右键点击选择属性,会直接进入这个路径:
控制面板\系统和安全\系统
在系统窗口的左侧栏找到高级系统设置,如下图:
点击高级系统设置,接着会弹出系统属性的窗口,选择高级那一项,选择下方的环境变量,如下图:
在环境变量的窗口下面的系统变量那一栏中点击新建,在弹出的新建系统变量的窗口里填入以下信息,对于变量值可以直接复制地址栏的地址过来,也可以通过浏览目录或者浏览文件进行添加,我的设置是这样的:
变量名 | 变量值 | 说明 |
---|---|---|
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 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的文件夹中,过程如下图:
移动好.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项目的更多相关文章
- 用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
- 3.创建第一个android项目
安卓开发学习笔记 1.安卓开发之环境搭建 2.SDK目录结构和adb工具及命令介绍 3.创建第一个android项目 1.打开Eclipse,选择File——>new——>others.. ...
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ ...
- day01_使用Android Studio创建第一个Android项目
使用Android Studio开发Android项目如此简单 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize ...
- 从零开始学android开发-创建第一个android项目
打开ADT开发工具
- 【Android开发】创建你的第一个Android项目
原文:http://android.eoe.cn/topic/summary 本文中你将了解到: 1. 使用Eclipse创建项目 2. 使用命令行创建项目 你还应该阅读: 1. 安装SDK(官网页面 ...
- 第03讲- 第一个Android项目
第03讲第一个Android项目 Android项目目录结构: 重要文件: src res AndroidManifest.xml 包含内容: MainActivity.java (程序主视图) 存放 ...
- 【Android Developers Training】 1. 创建一个Android项目工程
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Creating an Android Project(创建一个android项目)
一个android项目包含了你的应用程序中的所有源代码文件,我们可以通过android sdk tools轻松地创建一个拥有默认文件跟文件夹的android项目. 这部分课程我们将展示两种创建andr ...
随机推荐
- Nginx 极简入门教程!(转)
基本介绍 Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务. Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.r ...
- linux-解决/usr/bin/which: no ssh-copy-id in 和ssh: Could not resolve hostname问题
使用yum install openssh-clients 安装命令 有的系统没有此命令 有的系统缺省 就包含这一条命令! 但是我的测试机没有发现此命令 只能这样安装! 这时有报错了 1 2 [ro ...
- blender Text on Curve Text on Sphere
Text on Curve Shift + A 添加一个 BezierCurve Shift + A 添加一个 Text,Tab 编辑,再次 Tab 退回 Object Mode 选中 Text,Ad ...
- 爱思助手备份 iPhone 时没有设置密码,恢复备份时需要密码的问题
i4.cn 备份时 iPhone 上登陆的 Apple ID 曾经设置过备份密码,这个密码就是恢复备份时需要输入的密码!
- 将数据保存到excel文件(纯前端实现)
// 导出excel文件 /** * 依赖: import XLSX from 'xlsx' */ let obj = { '学生信息表': [ ['姓名', '性别', '年龄', '分数'], [ ...
- hibernate关联关系(一对多)
什么是关联(association)关联指的是类之间的引用关系.如果类A与类B关联,那么被引用的类B将被定义为类A的属性.例如: class B{ private String name; } pub ...
- NOIP模拟22「d·e·f」
T1:d 枚举. 现在都不敢随便打枚举了. 实际上我们只关注最后留下的矩阵中最小的长与宽即可. 所以我们将所有矩阵按a的降序排列. 从第\(n-m\)个开始枚举. 因为你最多拿 ...
- three+pixi 将二维和三维结合
PIXI+THREE 使用 PIXI 和 THREE 将三维和二维渲染在同一个 canvas 下面 效果 思路 初始化 PIXI 的 Application, 作为 pixi 最重要的变量 const ...
- IP头详解
IP包头长度(Header Length):长度4比特.这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分.该部分占4个bit位,单位为32bit(4个字节),即本区域值= IP ...
- js 显示日期时间,时间过一秒加1
html: <div id="data"><font>2017年10月17日 15:11:11</font></span> js: ...