android开发:用IDEA建立你的第一个APP

主要是记录一下各种小坑。

IDEA目前是第一流行的java开发工具,同时也支持android开发,可以替代安卓官方的andriod studio,不过仍然要依赖android sdk。

本例指导你完成第一个app,需要一台Windows PC和一部android手机。

目录

一、下载安装IDEA

二、新建android项目

[2.1 坑](#2.1 坑)

[2.2 新建项目](#2.2 新建项目)

[2.3 设置SDK](#2.3 设置SDK)

[2.4 连接手机](#2.4 连接手机)

[2.5 编译](#2.5 编译)

[2.7 运行](#2.7 运行)

三、理解项目目录,添点小功能

[3.1 项目结构](#3.1 项目结构)

[3.2 做出第一个修改](#3.2 做出第一个修改)


一、下载安装IDEA

用https访问官网www.jetbrains.com/zh-cn/idea/:

点击下载:

上面是收费的旗舰版,下面是免费的社区版,不需要注册,直接点击下载安装程序,执行安装。

二、新建android项目

2.1 坑

一定要坚持用新建项目来完成第一个流程,不要直接打开现成项目,否则提示缺少android SDK,这里只提供android的官网链接,但是官网下载很困难,我用了各种网络竟然都不能顺利下载。但是用IDEA新建项目却没问题,下载很顺利。

2.2 新建项目

打开IDEA,如果提示有升级就先升级,不升级也没关系。

新建项目:

依次选择【Android】、【Phone and Tablet】、【Basic Activity】,就是一个基本的APP,然后点击【Next】按钮。

作为第一个app,名称、位置不是很有所谓,【Minimum SDK】是支持的SDK版本,如果还没有安装任何SDK,这里会提示安装,遵照指示安装即可。

前面说了,如果是打开已经存在的项目,只会让你去官网自己下载,难度很高,这里就没什么可操心的,按照提示做就可以了。

选择SDK版本越低能兼容的设备也越多,下面的文字告诉你能兼容多少设备。

选择一个能支持你的手机的版本,不然没法在手机上测试。

然后点击【Create】按钮,就会创建好项目进入开发状态。

2.3 设置SDK

进入项目后是这个样子的:

有提示没有设置SDK,建立项目的时候不是设置了吗?是挺迷惑的,不过先不管了,点击后面的【Setup SDK】:

选择【Android API.....】中的某一个,选完之后就没有这个提示了。

如果此步做完后运行目标不是,那就是有问题啊。需要在项目设置里面重新设置:

打开之后:

重新设置之后应该变成了。

这算是个坑吧。

2.4 连接手机

首先要打开手机的开发者模式,操作方式一般是在【关于手机】【软件信息】【内核版本】上连续点击七次以上,然后用USB连接到电脑,允许USB调试。

正确连接之后手机型号会出现在调试目标里面:

我用的是三星A54。

2.5 编译

此时工具栏上应该是这样的:

第一个圈是编译,锤子图标,第二个是运行配置,这里显示的应该是机器人脑袋和【app】字样,表明是android App,第三个是已经连接的手机。

点击锤子图标进行编译,可能需要自动下载很多东西,有些可能下载很慢,除了忍没别的办法,所以建议等几分钟如果进度太慢就先去吃个饭打个球呗。

运气好的话回来就发现是这样了:

因为我之前已经编译过了,所以这里显示的是10s,实际第一次编译了两个小时。

吐槽一下:现在开发工具什么都在线下载,简直就是犯罪。

2.7 运行

点击三角图标运行程序,点了之后又在build,要好一会。

然后手机上程序就跑起来了:

这就算大功告成。

三、理解项目目录,添点小功能

3.1 项目结构

红圈那个文件是项目配置,AndroidManifest.xml,以后要添加权限就是在这个文件里面添加。

红圈上面展开的三个文件:FirstFragment、MainActivity、SecondFragment是java代码,程序入口和两个页面。

res/layout是界面的设计文件,图上打开的就是第一个界面对应的文件。

3.2 做出第一个修改

打开FirstFragment.java,做出如下修改:

在onCreateView添加一行:

java 复制代码
        binding.textviewFirst.append("啊");

然后重新编译运行程序:

哈哈,代码效果已经看到了。

(这里是结束)

相关推荐
为什么我不是源代码10 小时前
JPA读取数据库离谱问题-No property ‘selectClassByName‘ found-Not a managed type
java·sql
Lisonseekpan11 小时前
Guava Cache 高性能本地缓存库详解与使用案例
java·spring boot·后端·缓存·guava
我真的是大笨蛋11 小时前
Redis的String详解
java·数据库·spring boot·redis·spring·缓存
心态特好11 小时前
Jwt非对称加密的应用场景
java
行墨11 小时前
Jetpack Compose 深入浅出(二)——基础组件Text
android
敢敢J的憨憨L12 小时前
GPTL(General Purpose Timing Library)使用教程
java·服务器·前端·c++·轻量级计时工具库
sg_knight12 小时前
Spring Cloud与RabbitMQ深度集成:从入门到生产级实战
java·spring boot·spring·spring cloud·消息队列·rabbitmq·stream
雨白13 小时前
深入理解协程的运作机制 —— 调度、挂起与性能
android·kotlin
Chan1613 小时前
批处理优化:从稳定性、性能、数据一致性、健壮性、可观测性五大维度,优化批量操作
java·spring boot·后端·性能优化·java-ee·intellij-idea·优化
行者阿毅13 小时前
langchain4j+DashScope (通义千问)文生图
java·ai作画