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,都要单独讲一下,因为是真的有人运行不起来呀,再说一个例子,为什么你可以在一些地方看到很离谱的提示语,那是因为真的有人那么去做过,如果有问题请在评论区留言或者私信我,愿你开心每一天。

相关推荐
xiangxiongfly9151 小时前
Android 圆形和圆角矩形总结
android·圆形·圆角·imageview
幻雨様7 小时前
UE5多人MOBA+GAS 45、制作冲刺技能
android·ue5
Jerry说前后端8 小时前
Android 数据可视化开发:从技术选型到性能优化
android·信息可视化·性能优化
Meteors.9 小时前
Android约束布局(ConstraintLayout)常用属性
android
alexhilton10 小时前
玩转Shader之学会如何变形画布
android·kotlin·android jetpack
whysqwhw14 小时前
安卓图片性能优化技巧
android
风往哪边走14 小时前
自定义底部筛选弹框
android
Yyyy48215 小时前
MyCAT基础概念
android
Android轮子哥15 小时前
尝试解决 Android 适配最后一公里
android
雨白16 小时前
OkHttp 源码解析:enqueue 非同步流程与 Dispatcher 调度
android