使用IDEA 进行 安卓开发

news2024/11/19 11:20:41

使用IDEA 进行 安卓开发

前言

以前使用Eclipse 进行 Android 开发,感觉对新手来说实在是太不友好了,又是Android SDK,有是配 gradle 等一系列的东西,对与新手而言,总是遗漏。或者版本对不上,一堆问题,用 IDEA 来开发以后发现实在是太香了,很多东西都内置好了,安装上面步骤下载就好,反而少了很多不必要的麻烦

一、配置JDK环境

前提条件:安卓开发本身就是Java开发的一个分支,我们要确保计算机已经安装好JDK并做好了相关的配置。

1.1、下载JDK

官网:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

在这里插入图片描述

1.2、配置环境变量

注意:所有添加的环境变量的路径,最好是全部用英文,免得不必要的麻烦

新建系统变量JAVA_HOME

右键点击此电脑,点击属性——》高级系统配置——》环境变量——》新建变量名:JAVA_HOME 变量值:jdk的安装目录

在这里插入图片描述
新建系统变量CLASSPATH

点击新建——》变量名:CLASSPATH——》变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

在这里插入图片描述
在path的变量里面添加

%JAVA_HOME%\bin

在这里插入图片描述
在这里插入图片描述
测试一下:打开cmd(WIN+R)

输入java -version

出来版本情况就说明环境配置好了

在这里插入图片描述

二、使用IDEA配置Android SDK 开发环境

1、下载 Android SDK

Android SDK是Android软件开发包,是Android整体开发中所用到的工具包,提供了库文件以及其他开发所用到的工具。

1.1、点击File–>new project–>Android

在这里插入图片描述

1.2、点击 Install SDK ,填写Android SDK 下载路径(保持网络畅通,会自动下载 Android SDK)

在这里插入图片描述
在这里插入图片描述

1.3、不要动等待下载完,直到出现如下图:

在这里插入图片描述

1.4、到这,确定无误后,点击Finish就会开始下载,进入如下模式:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、使用IDEA创建 Android 项目

1、配置好后,新建一个Android项目测试一下。选择一个Basic Activity,其他的也行。

在这里插入图片描述

2、配置项目

①:Name(项目名称)
②:Package name(具体看公司要求)
③:Save location(存放位置,下次直接这边找到项目文件夹)
④:Language 记得改成 Java
⑤:然后选择 “Create” 创建即可

在这里插入图片描述

3、导入并 配置Gradle

创建好之后进入会有这些文件。之后项目会自动Build。这时候可能会需要导入gradle,只要根据提示自动导入就行了,不过这导入速度就看网速了。

当然也可以去自己去配置 (具体文章看这里):【IDEA如何配置 Gradle 及 Gradle 安装过程(详细版)】

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

到此项目已经创建好啦

在这里插入图片描述

4、切换视图

首先我们进入软件,自动就会给我们选择 “Project” 文件夹
这时,为了方便我们对项目进行操作,可以进行更改(其他项目类似)
将 “Project” 改为 “Android” 即可,这样就只显示安卓所需的文件了

在这里插入图片描述

4.2:资源介绍

其中,这里的资源是十分多的
但经常用的就以下几个
res_drawable:存放各类图形的描述文件,包括drawable的描述文件,以及三种图片格式:png(推荐)、jpg(支持)、gif(只支持静帧)
res_layout:存放页面的布局文件,主要在Acitivity、Fragment以及部分自定义控件中使用
res_values:存放各类参数的配置文件,常用的配置文件说明如下
colors.xml : 存放颜色的定义文件
strings.xml : 存放字符串类型的定义文件
styles.xml : 存放控件风格的定义文件

在这里插入图片描述

5、创建AVD 运行 Android 项目

安卓运行需要 AVD(android virtual device)手机模拟器

要开始运行的时候,提示No Target device,所以需要创建一个虚拟机,用来运行软件。

在这里插入图片描述
在运行按钮旁边选择添加一个device

1、点击Open AVD Manager

在这里插入图片描述

2、点击Create Virtual Device

在这里插入图片描述

3、选择一个样式,然后Next

在这里插入图片描述

4、选择一个版本按 Download 下载,左边位置选一个就行,右边也会有要下载的东西

4.1、选择一个版本下载

选择左边如图

在这里插入图片描述
选择右边如图,右边多一个步骤
在这里插入图片描述
在这里插入图片描述

点击Next

在这里插入图片描述

4.1.1、a system image must be selected to continue报错
a system image must be selected to continue报错解决办法:

在这里插入图片描述
先退回去
File——》Settings——》Appearance & Behavior——》System Settings——》Android SDK——》勾选show package details——》可以看到上面一张图片的API Level是30,我就点了一个64位的。

在这里插入图片描述

4.2、等待下载完成,点击Finish

在这里插入图片描述
在这里插入图片描述

5、退出后这样就配置完成了

在这里插入图片描述

然后关闭以后状态栏就变成这样啦

在这里插入图片描述

6、执行HelloWorld程序

在这里插入图片描述

然而,它报错了:

Installed Build Tools revision 32.0.0 is corrupted. Remove and install again using the SDK Manager.

你们还记不记得刚才让你们修改sdk下载安装路径来着,去里头给我找d8.bat和lib文件中的d8.jar改成dx点啥啥啥的,参考:

进入SDK目录的build-tools->32.0.0
将d8.bat改成dx.bat
进入lib目录将d8.jar改成dx.jar

在这里插入图片描述

在这里插入图片描述

解决后就开始疯狂加载中……

在这里插入图片描述
然后重新运行

在这里插入图片描述
这样就成功了

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

.net core 读取配置的几种方式

json配置文件示例 {"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"Account": {"username": "zhangsan","password":&quo…

arXiv2022-12 | FLIP:Scaling Language-Image Pre-training via Masking

凯明团队新作。 论文地址:https://arxiv.org/abs/2212.00794 一、问题 Even using high-end infrastructures, the wall-clock training time is still a major bottleneck hindering explorations on scaling vision-language learning. 即使使用高端的基础设施…

人工智能:声纹相关基础概念介绍

❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉: 数据库领域优质创作者🏆&#x…

移动端开发——APP端上H5容器化建设

1. 背景 当前移动端和前端的结合愈加紧密,尤其是在偏重活动运营的电商App中,受制于App版本审核,具备研发成本低、可灵活发布等特点的H5页面受到青睐,使其在APP端上承接了越来越多的业务。然而H5页面本身也存在一些亟需解决的问题…

nginx配置错误三例漏洞-

路径:nginx/insecure-configuration 运行成功后,Nginx将会监听8080/8081/8082三个端口,分别对应三种漏洞。 8080:CRLF注入漏洞 8081: 目录穿越漏洞 8082: add_header被覆盖 $uri导致的CRLF注入漏洞 Nginx…

股票分时成交明细接口的数据怎么看?

今天的文章我们主要针对于股票日线级别的行情数据,介绍了一些获取和处理的方法,其实最原始的数据是交易明细数据,level2行情软件的各种周期和统计的数据都是通过明细数据跨周期转换而形成的,比如分钟K线、小时K线、当日成交量、成…

基于STM32蓝牙控制的app智能台灯设计

提示:记录毕设 文章目录前言一、任务书1.1设计(研究)目标:1.2设计(研究)内容:二、代码思路三、硬件设计3.1总体设计3.2蓝牙部分设计四、联系我们五、部分代码喜欢请点赞哦!前言 基于STM32蓝牙控制的app智能台灯设计,主控使用STM32F103ZET6&a…

web服务器及IDEA部署Tomcat服务器

目录 一、程序开发体系结构 1.1 C/S体系结构 1.2 B/S体系结构 二、Web服务器 2.1 概念 2.1.1 什么是Web 2.1.2 什么是Web服务器 2.2 常见Web服务器 2.3 Tomcat服务器 2.3.1 Tomcat的下载 2.3.2 Tomcat的安装 2.3.3 Tomcat的目录结构 2.3.4 Tomcat的启动 2.3.5 To…

MFC树控件的属性和初始化(基于对话框的编程)

目录 一、控件属性 1.找控件Tree Control 2.Has Lines和Has Buttons属性 3.Lines At Root属性 二、代码操作Tree Control显示内容 1.添加Tree Control变量 2.在OnInitDialog中添加初始化代码 3.设置图标 3.1导入icon 3.2 写入加载图片代码 3.3添加节点 4.设置默认选…

抗击疫情静态HTML网页作业作品 大学生抗疫感动专题页设计制作成品 简单DIV CSS布局网站

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

HTML期末大作业(HTML+CSS+JavaScript响应式游戏资讯网站bootstrap网页)

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

12月5日:thinkphp模板

今天学习ThinkPHP中的模板部分内容 接口开发,看不到dom结构,页面信息都是通过js或者一些其他技术引入 模板:是用来渲染前端页面,在后端的api接口开发中并不会常用到模板,但是后台管理页面却会使用MVC模式开发&#xf…

Camera API2使用流程分析

1.首先看下framework层CameraService服务初始化流程分析 <1>. main_cameraserver.cpp的路径 /frameworks/av/camera/cameraserver/ CameraService::instantiate&#xff08;&#xff09;实际调用的是BinderService中的函数&#xff0c;因为CameraService是继承BinderSer…

[附源码]计算机毕业设计JAVA疫情状况下生活物资集体团购系统

[附源码]计算机毕业设计JAVA疫情状况下生活物资集体团购系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a…

学习ITIL4又给数字人带来哪些优势

2019新的ITIL 指南将被称为ITIL 4。这个名称反映了ITIL 4 在支持个人和组织应对第四次工业革命方面的作用。 IT 是当今世界每个企业的核心。该更新将使ITIL 能够反映我们所处的快节奏和复杂的环境&#xff0c;以及新的工作方式和新兴实践&#xff0c;所有这些都不仅对于ITSM 专…

鹿蜀:一个基于日常开发任务体现开发人员工作状况的系统

一、背景 为了能够更方便、更直观的让Boss&#xff0c;让同伴&#xff0c;让自己了解到自己近期的工作情况&#xff0c;我拉了一个小队&#xff0c;利用农闲的时间&#xff0c;结合已有的项目管理系统中的数据&#xff0c;开发了一个新系统&#xff0c;名叫 “鹿蜀”。 二、系…

K8s 实战 动态PV StorageClass 存储类

前面我们学习了 PV 和 PVC 的使用方法&#xff0c;但是前面的 PV 都是静态的&#xff0c;什么意思&#xff1f;就是我要使用的一个 PVC 的话就必须手动去创建一个 PV&#xff0c;我们也说过这种方式在很大程度上并不能满足我们的需求&#xff0c;比如我们有一个应用需要对存储的…

说说你对slot的理解?

首先&#xff0c;大概了解一下插槽&#xff1a; 插槽是什么 ![在这里插入图片描述](https://img-blog.csdnimg.cn/90b04660769e49c286ee2e1821d2a2bb.png 插槽&#xff1a;在HTML中 slot 元素 &#xff0c;作为 Web Components 技术套件的一部分&#xff0c;是Web组件内的一…

【蓝桥杯选拔赛真题33】python回文数升级 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 ​编辑 python回文数升级 一、题目要求 1、编程实现 2、输入输出

Spring 框架介绍和使用

微信公众号&#xff1a;运维开发故事&#xff0c;作者&#xff1a;老郑 历史的选择 Spring 作为一个基础的框架&#xff0c;是在 Java EE 开发历史中&#xff0c;是成千上万公司选择。单独使用 Spring 的非常少了&#xff0c;很多都是用 Spring-Boot/Spring-Cloud 来开发&…