Android基础(一) 运行HelloWorld

    • 一、创建你的第一个Android项目
    • 二、创建HelloWorld项目
    • 三、安装并启动模拟器
    • 四、安装三方模拟器
    • 五、使用真机

一、创建你的第一个Android项目

  学习任何一门编程语言,编写的第一个程序都是Hello World,这已经是一种传承了,下面我们开始创建HelloWorld项目。

二、创建HelloWorld项目

  在Android Studio的欢迎界面点击New Project按钮,将会打开一个让你选择项目类型的界面,如图所示

在这里插入图片描述
  在这里我们不仅可以创建手机和平板类型的项目,还可以选择创建穿戴设备、电视、汽车等类型的项目,现在我们只专注于手机和平板,Android Studio还提供了一些其他的内置模板,可以帮助我们快速编写程序,但是目前你还用不到它们,我们从最简单的开始,向下滑动一下,直接选择Empty Activity,创建一个空的Activity即可。

在这里插入图片描述
  下面对这个项目配置页面进行说明,Name 表示项目名称,刚才我们说了创建HelloWorld项目,那么这里我们填入“HelloWorld”即可。

  Package name 表示项目的包名,Android系统通过不同的包名来不同的应用程序,也就是App,因此包名要具有唯一性,Android Studio会根据项目名称来自动帮我们生成合适的包名。

  这里的包名默认是com.example开头,后面的就是根据项目名生成的。通常的包名由三个部分组成,com是默认,第二部分example在实际开发中都会做改动,这里会体现这个项目是个人的还是团队的,个人的比如李小龙,就可以输入lxl,团队的比如腾讯,就可以输入tencent,第三部分就是项目的描述了,比如手机QQ,就可以输入mobileqq,将上面三个组合起来,就是腾讯的手机QQ的应用包名:com.tencent.mobileqq。这就是一种很规范的写法,如果是个人开发者,可以用自己的名字缩写,这里还是使用example,用QQ来举例也是为了纪念我逝去的青春。

  Save location 表示项目代码存放的位置,不要使用默认的存放路径,建议在空间比较大的盘存放,比如我在D盘下创建一个AndroidProjects文件夹,在此文件夹下放置所有的Android项目文件,这也是一种规范。

  Minimum SDK 可以设置当前项目的最低兼容版本,默认的最低兼容版本就是Android 7.0,对应API 24,兼容这个最低版本可以使你的应用程序运行在大约98.6%的设备上。为什么不是100%,因为还有一些设备,例如电视机系统,还有用4.0或5.0的Android版本,你可以通过右边下拉按钮,选择其他最低兼容Android 版本,下拉最低选择的是Android7.0,最高是Android16.0,
在这里插入图片描述
这里你选择的版本越高,可安装的机型就越少,建议你这里不做任何改动,就使用默认的Android 7.0最后最低兼容版本。

  Build configuration language 标识当前项目的Gradle构建文件所使用的语言,现在最新的项目默认使用的语言是Kotlin,之前的版本中默认的是Groovy,Android的项目开发语言有两种语言,JavaKotlin,Gradle构建语言也有两种,GroovyKotlin,你可以通过右侧下拉框进行切换,这两种的区别我会在之后的文章中进行说明。

在这里插入图片描述

  现在点击“Finish”按钮,第一次创建项目会下载最新的目标SDK,这里的36对应的是Android 16,可能会花一些时间,下面正在构建项目。

在这里插入图片描述

  点击底部的进度条,这里可以看到当前正在下载的内容,如果这个地方你看到很久都不动了,说明你的网络环境访问这个资源地址有点慢,或者是受限,那么你就可以考虑更换下载源重新下载了。

在这里插入图片描述

配置完成之后如下图所示:

在这里插入图片描述
  目前我们要运行起来,需要在真机或者模拟器上,真机就是我们自己的手机,模拟器可以使用AS自带的模拟器,或者三方模拟器,我们依次介绍,首先是AS模拟器。

三、安装并启动模拟器

  点击侧边栏的 Device Manager(设备管理器)

在这里插入图片描述

点击 ➕ 号,选择Create Vritual Device

在这里插入图片描述

选择一个支持API 35+ 的设备,这里我们选择Pixel 9a

在这里插入图片描述

点击Next。

在这里插入图片描述

点击Finish就会开始下载模拟器所需要的资源,可能比较大,不过这个下载一般会比较快。

在这里插入图片描述

下载好之后就能在这里看到所安装的虚拟机。

在这里插入图片描述

点击启动按钮启动模拟器。

点击
启动后如下图所示:

在这里插入图片描述
  可以看到设备列表这里有我们刚才启动成功的虚拟机,点击右侧的启动按钮就能将我们的项目编译成APK安装到虚拟机上,点击它。

在这里插入图片描述
  项目第一次编译都会花比较长的时间,我们可以点击AS左侧底部的Build按钮,查看编译进度,了解一下编译会有哪些信息,这有利于你后面在编译失败的时候根据错误信息进行问题的排查,当然这得是你有一定的经验之后了,刚开始你肯定有问题就慌的不行,我也一样,我不说什么过来人的话,你就只管百度,搜索的前几页都尝试一下,然后试一下DeepSeek或者ChatGPT,都尝试一下,就能解决大部分问题。一定不要遇到困难就放弃,其实很好解决。

在这里插入图片描述
  这里我们就编译成功了,耗时3分48秒,运行到虚拟机上了,可以看到HelloWorld了,这就表明我们的项目环境没有问题了,这一点对于刚开始学习的同学来说也很重要,有时候你会觉得这个项目从头开始就好了,没有那么多疑难杂症,干干净净的。

四、安装三方模拟器

  因为AS的模拟器时长会出现一些问题,比如第一次打得开,第二次就打不开了,很考验人品,你要是平时抽卡能经常SSR,那么就无所谓,否则可以使用三方模拟器,其实原理和AS模拟器差不多,缺点就是系统不是最新的Android版本,优点就是稳定,没有那么多问题,毕竟很多人是拿三方模拟器在电脑上玩手游的,所以我们用来开发完全是没有问题的。

  三方模拟器也有很多的版本,比如MuMu,雷电等等,这里我们就使用一下Mu雷电模拟器,悄悄地说一声mumu我启动后AS识别不到这个设备,所以我们使用雷电模拟器:雷电模拟器下载地址,安装和下载过程我就不多说了,非常简单,跟常规的程序没啥区别,就是注意一下安装的路径,尽量不要选择C盘。

在这里插入图片描述

  安装之后启动起来,就是这样的,默认是横屏,我们可以改成竖屏,怎么改呢?右侧的设置会出现一个弹窗,选择显示,分辨率设置将平板切换成手机,然后设置分辨率1080x1920,之后关闭这个弹窗,会提示你重启设备。

在这里插入图片描述

重启后如下图所示:

在这里插入图片描述

这里可以看到AS就已经识别到这个模拟器了,点击运行按钮,将运行安装到雷电模拟器上。

在这里插入图片描述

安装好了

在这里插入图片描述

五、使用真机

  上面介绍了两种模拟器,下面我们使用真机,真机就是你当前使用的手机、可以是自己的手机也可以是测试机,做Android开发自然就是使用Android测试机、纯血鸿蒙就用鸿蒙测试机、苹果开发就用苹果手机,你可千万不要问我苹果手机能不能开发Android,我了解有很多同学使用的是苹果或者鸿蒙手机,那么就可以使用上述的两个方式进行开发,通过模拟器去验证自己写的代码。这里是给有Android真机的同学进行的讲解。

  使用真机也很简单,手机一个Android手机,我们将手机的开发者模式打开,这里我们使用红米K80进行举例,目前使用的系统是Xiaomi HyperOS 2.0.207.0,Android 15。进入 设置 → 我的设备 → 全部参数与信息 → OS版本。快速点击OS版本6下,就会看到屏幕出现一个提示,开发者模式已打开,然后返回到设置页面,进入更多设置,滑动到屏幕底部,就会看到开发者选项,点击进去,找到USB调试,如果是关闭的你就打开,注意小米系列手机,需要你在手机里面装Sim卡才能打开开发者模式,这个有点膈应人,打开之后我们通过USB数据线将手机和电脑连接起来,注意一下这个线不是普通的线,你不要从两元店买根线过来用,那是不行滴,你可以用手机本身的原装USB线,百分百有用,或者可以去淘宝上买一根绿联的USB数据线,也可以用。

  一般情况下第一次连接会弹出一个弹窗,标题是 允许USB调试吗? 你记得勾选上底部的一律使用此手机进行调试,点击确定即可。然后一般情况下你就能在AS上看到自己手机的设备名称了,如下图所示:

在这里插入图片描述

如果你在此之前使用了前面两个模拟器,那么可以将那两个模拟器关掉了,毕竟是模拟器,比较吃内存,下面点击运行按钮,将项目运行安装到自己的手机上。

在这里插入图片描述

  安装好了,为什么是黑色的,因为我开了深色模式,晚上对眼睛好。为什么就是运行HelloWorld,都要单独讲一下,因为是真的有人运行不起来呀,再说一个例子,为什么你可以在一些地方看到很离谱的提示语,那是因为真的有人那么去做过,如果有问题请在评论区留言或者私信我,愿你开心每一天。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/90945.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/90945.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/90945.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MongoDB 和 Elasticsearch(ES)区别

MongoDB 和 Elasticsearch(ES)都是流行的 NoSQL 数据库,但设计目标和适用场景有显著区别。以下是它们的核心差异和典型使用场景对比:1. 核心定位特性MongoDBElasticsearch数据库类型文档数据库(通用型 OLTP&#xff09…

【C++算法】89.多源BFS_01 矩阵

文章目录题目链接:题目描述:解法C 算法代码:题目链接: 542. 01 矩阵 题目描述: 解法 先看懂题目 解法一:一个位置一个位置求(最差的情况下会非常恐怖) 解法二:多源BFS正…

数据结构之 【排序】(归并排序)

目录 1.递归实现归并排序的思想及图解 2.递归实现归并排序的代码逻辑 2.1嵌套子函数 2.2递归过程 2.3递归结束条件 2.4归并及拷贝过程 3.非递归实现归并排序的思想及图解 4.非递归实现归并排序的代码逻辑 4.1边归并边拷贝 4.2某一gap下归并完成才进行拷贝 5.归并排…

企业如何选择适合的高防服务器?

高防服务器租用哪家好?这个问题困扰着许多站长,建立的网站经常受到各种网络攻击,虽然高防服务器有着较高的防御性能,十分适合经常被攻击的行业网站,但是如何租到满意的高防服务器呢!徐州高防服务器是部署在…

告别重复劳动:Ansible 自动化运维超详细学习路线图

在运维的世界里,我们总是在与重复性任务作斗争:部署同一套环境 N 次、在几十台服务器上修改同一个配置文件、一遍又一遍地执行相同的发布流程……这些工作不仅枯燥,还极易出错。 如果你也为此感到烦恼,那么 Ansible 就是为你量身打…

UDS 0x29 身份验证服务 Authentication service

背景 0x29服务的目的是为客户端提供一种证明其身份的方法,在ECU端,有些服务或者数据因信息安全、排放或功能安全原因而受到严格限制。 只有身份验证通过之后,才能够允许其访问数据和/或诊断服务。 例如,用于将数据下载/上传到ECU以…

【python高阶】-1- python工程和线程并发

一、项目工程守则1.pdm新建一个项目命令行终端:pip install pdmpdm init版本号:x.y.zx:兼容版本y:新增功能z:补丁版本pdm add pytest requests (添加依赖)pdm是协助管理我们的项目 2. black就是规范我们的代码风格的:pdm add blackblackblack…

YOLOv8 剪枝模型加载踩坑记:解决 YAML 覆盖剪枝结构的问题

1. 问题背景模型剪枝是实现模型轻量化、加速推理的关键步骤。然而,在 Ultralytics YOLOv8 的生态中,在成功剪枝后,进行微调(Fine-tuning)时会遇到一个令人困惑的现象:明明加载的是剪枝后的模型(…

js的学习1

1.数组 数组方法 push()数组尾部添加unshift()数组头部添加pop()数组尾部删除shift()数组头部删除splice(起始位置,删除几个元素,要替换的元素)删除指定的元素,改变了原数组,返回值是被删除的元素indexOf()第一次查到的索引&#…

LeetCode 2563.统计公平数对的数目

给你一个下标从 0 开始、长度为 n 的整数数组 nums &#xff0c;和两个整数 lower 和 upper &#xff0c;返回 公平数对的数目 。 如果 (i, j) 数对满足以下情况&#xff0c;则认为它是一个 公平数对 &#xff1a; 0 < i < j < n&#xff0c;且 lower < nums[i] n…

ZABBIX配置自动发现与自动注册,网易邮箱告警和钉钉告警

一、自动发现zabbix server 主动的去发现所有的客户端&#xff0c;然后将客户端的信息登记在服务端上。缺点是如果定义的网段中的主机数量多&#xff0c;zabbix server 登记耗时较久&#xff0c;且压力会较大。1、部署准备准备三台虚拟机192.168.80.151&#xff1b;192.168.80.…

QT(五)常用类

1. QString字符串类(掌握) QString是Qt的字符串类&#xff0c;与C的string相比&#xff0c;不再使用ASCII编码&#xff0c;QString使用的是Unicode编码。 QString中每个字符都是一个16位的QChar&#xff0c;而不是8位的char。 QString完全支持中文&#xff0c;但是由于不同的技…

EXCEL怎么提取表名

错误的方法&#xff1a;使用以下方法提取表名的时候&#xff0c;会存在1个问题&#xff0c;公式只在当前工作表生效&#xff0c;换工作表会出现表名覆盖的情况。RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename&quo…

springboot校园外卖配送系统

目 录 第一章 绪 论 1.1背景及意义 1.2国内外研究概况 1.3 研究的内容 第二章 关键技术的研究 2.1开发技术 2.2 Springboot框架介绍 2.3 Vue.js 主要功能 2.4 MVVM模式介绍 2.4 B/S体系工作原理 2.5 MySQL数据库 第三章 系统分析 3.1 系统设计目标 3.2 系统可行性…

【智慧物联网平台】安装部署教程——仙盟创梦IDE

一、部署前准备1. 环境要求基础环境&#xff1a;JDK 1.8、MySQL 5.7/8.0、Maven 3.6、Redis&#xff08;用于缓存&#xff09;、Node.js&#xff08;用于前端构建&#xff0c;可选&#xff09;。依赖服务&#xff1a;若需对接门禁、道闸等硬件设备&#xff0c;需确保设备网络可…

【安全漏洞】防范未然:如何有效关闭不必要的HTTP请求方法,保护你的Web应用

在构建和维护Web应用的过程中&#xff0c;安全问题总是我们最关心的话题之一。今天&#xff0c;我们要探讨的是一个经常被忽视的Web漏洞——未关闭或限制不必要的HTTP请求方法。 虽然我们在日常开发中主要使用 GET 和 POST 这两种请求方法&#xff0c;但像 PUT、DELETE、HEAD、…

嵌入式Linux裸机开发笔记8(IMX6ULL)主频和时钟配置实验(1)

引言在前几章实验中我们都没有涉及到 I.MX6U 的时钟和主频配置操作&#xff0c;全部使用的默认配置&#xff0c; 默认配置下 I.MX6U 工作频率为 396MHz。但是 I.MX6U 系列标准的工作频率为 528MHz&#xff0c;有些 型号甚至可以工作到 696MHz。本章学习 I.MX6U 的时钟系统&…

设计模式(四)创建型:生成器模式详解

设计模式&#xff08;四&#xff09;创建型&#xff1a;生成器模式详解生成器模式&#xff08;Builder Pattern&#xff09;是 GoF 23 种设计模式中的核心创建型模式之一&#xff0c;其核心价值在于将一个复杂对象的构建过程与其表示分离&#xff0c;使得同样的构建过程可以创建…

《Angular+Spring Boot:ERP前端采购销售库存协同架构解析》

基于Angular与Spring Boot构建的全栈ERP前端&#xff0c;绝非技术的简单叠加&#xff0c;而是通过深度融合两者特性&#xff0c;打造出兼具稳定性与灵活性的业务载体。Angular的组件化架构将复杂界面拆解为可复用的独立单元&#xff0c;依赖注入机制则让服务调用与数据流转条理…

Java 排序

文章目录排序插入排序分析希尔排序分析选择排序分析堆排序分析冒泡排序分析快速排序霍尔法分析挖坑法找基准前后指针法题目快排的优化三数取中法非递归实现快排归并排序分析非递归实现归并排序海量数据的排序非比较的排序计数排序分析基数排序桶排序排序 稳定的排序&#xff1…