当前位置: 首页 > news >正文

搭建android开发环境 android studio

1、环境介绍


在进行安卓开发时,需要掌握java,需要安卓SDK,需要一款编辑器,还需要软件的测试环境(真机或虚拟机)。
早起开发安卓app,使用的是eclipse加安卓SDK,需要自行搭建。
目前开发安卓app,只需要安装AndroidStudio,可以直接通过AndroidStudio下载SDK
编写完的代码如何运行:

1、使用AndroidStudio自带的安卓虚拟机
2、使用网易mumu、夜神模拟器等虚拟机
3、使用真机,只要是安卓手机,开启usb调试,不需要root就可以使用

2、下载AndroidStudio


官方下载:
历史版本下载:https://developer.android.google.cn/studio/archive?hl=zh-cn
最新版本下载:https://developer.android.google.cn/studio

官方提供的使用教程:探索 Android Studio  |  Android Developers

3、项目构建工具介绍:Gradle和Maven都是Java项目的构建工具


语法:Gradle使用Groovy语言进行编写,而Maven使用XML。Groovy更加灵活易读,XML更加严谨易于重用。
性能:Gradle比Maven更加高效快速,因为它使用了增量构建模式,只会重新构建被更改的模块,而Maven则需要重新构建整个项目。
插件:Gradle的插件生态更加丰富和现代化,而Maven的插件相对较为传统。此外,Gradle的插件可以非常容易地编写和定制,而Maven的插件相对繁琐。
维护:Maven有比较成熟的工具链和文档支持,而Gradle则相对较新,可能需要更多的自学
Groovy介绍:Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码

4、配置AndroidStudio

  • 标准安装,自动选择sdk安装路径,custom是自定义安装,手动选择安装路径

  • SDK Folder:sdk目录,Windows用户安装时不能有空格和中文
  • sdk、adb、虚拟机设置,一定点击Accept

  • 等待下载完成即可

5、配置SDK

根据手机安卓版本进行选择

点击SDK Tools,安装一些其他工具

6、创建虚拟机

  • 选择要创建的虚拟手机型号

项目

├── .gradle                            #AndroidStudio 自动生成的文件,会自动修改它的,项目打包时也会删除;
├── .idea                              # AndroidStudio自动生成的文件,会自动修改它的,项目打包时也会删除;
├── app                                # 应用相关的东西都在里面,工作的核心目录 
│        ├── build                     # 编译的产物。某些情况下,可以手动把它整个删掉。
│        ├── libs                      # 依赖包可以放这里,比如一些jar文件。
│        ├── src                       # 代码在这。非常重要。
│        │        ├── main
│        │        │        ├── java     # 放Java代码的地方
│        │        │        ├── res 
│        │        │        │        ├── drawable  # 应用图标
│        │        │        │        ├── layout    # Android布局文件夹
│        │        │        │        ├── mipmap    # 适配不同分辨率的手机
│        │        │        │        ├── mipmap    # 桌面图标
│        │        │        │        └── values   # 颜色、样式、字符集配置文件夹
│        │        │        ├──AndroidManifest.xml#APP运行配置文件,用来配置权限:程序入口配置、应用程序主题、应用程序组件等
│        ├── .gitignore                          # 版本控制
│        ├── build.gradle                        # 非常重要,app的构建配置。俗称“app的gradle文件”。
│        └── proguard-rules.pro                  # 不管。这个是混淆配置。
├── gradle                                       # 它是一个构建起配置文件
├── .gitignore                                   # 整个工程的版本控制
├── build.gradle                                 # 很重要。项目级的配置。俗称“项目gradle文件”
├── gradle.properties                            # 全局的gradle配置文件
├── gradlew                                       # Linux/mac上执行gradle命令
├── gradlew.bat                                   # Windows上执行gradle命令
├── local.properties                              # 本地配置文件,一般不上传
└── settings.gradle                               # gralde的项目级配置
 

7、创建第一个Android工程

如果是用Java语言开发选择创建Empty Views Acitivty

语言可选JavaKotlin,根据自己熟悉的语言自行选择

8、下载Gradle插件

第一次创建工程会下载Gradle插件,如果出现下载超时,修改gradle-wrapper.properties文件中的distributionUrl值改成腾讯代理地址https://mirrors.cloud.tencent.com/gradle/

改完之后点击同步按钮重新下载gradle

相关文章:

搭建android开发环境 android studio

1、环境介绍 在进行安卓开发时,需要掌握java,需要安卓SDK,需要一款编辑器,还需要软件的测试环境(真机或虚拟机)。 早起开发安卓app,使用的是eclipse加安卓SDK,需要自行搭建。 目前开…...

R语言6种将字符转成数字的方法,写在新年来临之际

咱们临床研究中,拿到数据后首先要对数据进行清洗,把数据变成咱们想要的格式,才能进行下一步分析,其中数据中的字符转成数字是个重要的内容,因为字符中常含有特殊符号,不利于分析,转成数字后才能…...

RocketMQ学习笔记(持续更新中......)

目录 1. 单机搭建 2. 测试RocketMQ 3. 集群搭建 4. 集群启动 5. RocketMQ-DashBoard搭建 6. 不同类型消息发送 1.同步消息 2. 异步消息发送 3. 单向发送消息 7. 消费消息 1. 单机搭建 1. 先从rocketmq官网下载二进制包,ftp上传至linux服务器&#xff0c…...

强化学习的基础概念

这节课会介绍一些基本的概念,并结合例子讲解。 在马尔科夫决策框架下介绍这些概念 本博客是基于西湖大学强化学习课程的视屏进行笔记的,这是链接: 课程链接 目录 强化学习的基本概念 state和state space Action和Action Space State transiti…...

excel怎么删除右边无限列(亲测有效)

excel怎么删除右边无限列(亲测有效) 网上很多只用第1步的,删除了根本没用,还是存在,但是隐藏后取消隐藏却是可以的。 找到右边要删除的列的第一个空白列,选中整个列按“ctrlshift>(向右的小箭头)”&am…...

STM32-笔记23-超声波传感器HC-SR04

一、简介 HC-SR04 工作参数&#xff1a; • 探测距离&#xff1a;2~600cm • 探测精度&#xff1a;0.1cm1% • 感应角度&#xff1a;<15 • 输出方式&#xff1a;GPIO • 工作电压&#xff1a;DC 3~5.5V • 工作电流&#xff1a;5.3mA • 工作温度&#xff1a;-40~85℃ 怎么…...

Linux | Ubuntu零基础安装学习cURL文件传输工具

目录 介绍 检查安装包 下载安装 手册 介绍 ‌cURL是一个利用URL语法在命令行下工作的文件传输工具&#xff0c;首次发行于1997年‌‌12。cURL支持多种协议&#xff0c;包括FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3…...

什么是 GPT?Transformer 工作原理的动画展示

大家读完觉得有意义记得关注和点赞&#xff01;&#xff01;&#xff01; 目录 1 图解 “Generative Pre-trained Transformer”&#xff08;GPT&#xff09; 1.1 Generative&#xff1a;生成式 1.1.1 可视化 1.1.2 生成式 vs. 判别式&#xff08;译注&#xff09; 1.2 Pr…...

SpringCloudAlibaba实战入门之路由网关Gateway过滤器(十三)

承接上篇,我们知道除了断言,还有一个重要的功能是过滤器,本节课我们就讲一下常见的网关过滤器及其一般使用。 一、Filter介绍 类似SpringMVC里面的的拦截器Interceptor,Servlet的过滤器。“pre”和“post”分别会在请求被执行前调用和被执行后调用,用来修改请求和响应信…...

电路仿真软件PSIM简介

在从事开关电源相关产品开发的工程师或者正在学习开关电源的学习者&#xff0c;常常会用到各种仿真软件进行电路的仿真&#xff0c;不仅可以快速验证电路参数&#xff0c;还能清楚知道各器件的工作状态。 现在的电路仿真软件很多&#xff0c;例如matlab、Multisim、Simplis&…...

C语言:调试的概念和调试器的选择

所谓调试&#xff08;Dubug&#xff09;&#xff0c;就是跟踪程序的运行过程&#xff0c;从而发现程序的逻辑错误&#xff08;思路错误&#xff09;&#xff0c;或者隐藏的缺陷&#xff08;Bug&#xff09;。 在调试的过程中&#xff0c;我们可以监控程序的每一个细节&#xff…...

25. C++继承 1 (继承的概念与基础使用, 继承的复制兼容规则,继承的作用域)

⭐上篇模板文章&#xff1a;24. C模板 2 (非类型模板参数&#xff0c;模板的特化与模板的分离编译)-CSDN博客 ⭐本篇代码&#xff1a;c学习 橘子真甜/c-learning-of-yzc - 码云 - 开源中国 (gitee.com) ⭐标⭐是比较重要的部分 目录 一. 继承的基础使用 1.1 继承的格式 1.2 …...

git 退出编辑模式

在使用 Git 时&#xff0c;有时需要进入编辑器来输入提交信息或进行其他编辑操作。不同的系统和配置可能会导致使用不同的编辑器。以下是几种常见 Git 编辑器的退出方法&#xff1a; ‌Vim 编辑器‌&#xff1a; ‌保存并退出‌&#xff1a; 按下 Esc 键退出编辑模式。输入 :w…...

内容营销与传统营销方式有哪些差别?

在互联网高度发达的当下&#xff0c;碎片化的信息接收方式&#xff0c;让用户对于营销信息拥有较高的敏感度。这一现状&#xff0c;也使得众多传统营销方式正在逐渐失效。想要稳定推广效率&#xff0c;内容营销是当下不少品牌的共同选择。接下来&#xff0c;就让我们来了解下内…...

EasyExcel(读取操作和填充操作)

文章目录 1.准备Read.xlsx&#xff08;具有两个sheet&#xff09;2.读取第一个sheet中的数据1.模板2.方法3.结果 3.读取所有sheet中的数据1.模板2.方法3.结果 EasyExcel填充1.简单填充1.准备 Fill01.xlsx2.无模版3.方法4.结果 2.列表填充1.准备 Fill02.xlsx2.模板3.方法4.结果 …...

【华为OD-E卷 - 机房布局 100分(python、java、c++、js、c)】

【华为OD-E卷 - 机房布局 100分&#xff08;python、java、c、js、c&#xff09;】 题目 小明正在规划一个大型数据中心机房&#xff0c;为了使得机柜上的机器都能正常满负荷工作&#xff0c;需要确保在每个机柜边上至少要有一个电箱。 为了简化题目&#xff0c;假设这个机房…...

【竞技宝】LOL:IG新赛季分组被质疑

北京时间2024年12月31日&#xff0c;今天已经2024年的最后一天&#xff0c;在进入一月之后&#xff0c;英雄联盟将迎来全新的2025赛季。而目前新赛季第一阶段的抽签结果已经全部出炉&#xff0c;其中人气最高的IG战队在本次抽签中抽到了“绝世好签”引来了网友们的质疑。 首先介…...

ChatBI来啦!NBAI 正式上线 NL2SQL 功能

NebulaAI 现已正式上线 NL2SQL 功能&#xff0c;免费开放使用&#xff01; 什么是 NL2SQL&#xff1f;NL2SQL 即通过自然语言交互&#xff0c;用户可以轻松查询、分析和管理数据库中的数据&#xff08;ChatBI&#xff09;&#xff0c;从此摆脱传统复杂的数据库操作。 欢迎免费…...

8. Web应用程序(Web)

8. Web应用程序&#xff08;Web&#xff09; Spring Boot 非常适用于Web应用程序开发。你可以使用嵌入式 Tomcat、Jetty、Undertow或Netty创建一个独立的HTTP服务器。大多是Web应用程序都会使用 spring-boot-starter-web 依赖模块来快速启动和运行项目。你也可以选择使用 spri…...

Linux内核修改内存分配策略

今天遇到了如下的内核报错 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f0e1e06c000, 65536, 1) failed; errorCannot allocate memory (errno12)这个报错是因为&#xff0c;linux会对大部分的内存资源申请都回复允许&#xff0c;以便于运行更…...

六大亮点解析:AI视频监控助力部队训练安全管理

一、用户痛点&#xff1a; 在部队的日常训练和任务执行中&#xff0c;官兵的安全始终是最为重要的保障。然而&#xff0c;传统的监控方式存在显著的局限性&#xff0c;尤其是在高强度、长时间的训练过程中&#xff0c;人工值守监控容易产生疲劳&#xff0c;误判的风险大&#…...

【从零开始入门unity游戏开发之——C#篇33】C#委托(`Delegate`)和事件(`event` )、事件与委托的区别、Invoke()的解释

文章目录 一、委托&#xff08;Delegate&#xff09;1、什么是委托&#xff1f;2、委托的基本语法3、定义自定义委托4、如何使用自定义委托5、多播委托6、C# 中的系统委托7、GetInvocationList 获取多个函数返回值8、总结 二、事件&#xff08;event &#xff09;1、事件是什么…...

大数据与机器学习(它们有何关系?)

想了解大数据和机器学习吗&#xff1f;我们将为你解释它们是什么、彼此之间有何关联&#xff0c;以及它们为何在数据密集型应用中如此重要。 大数据和机器学习是如何相互关联的&#xff1f; 大数据指的是传统存储方法无法处理的海量数据。机器学习则是计算机系统从观察结果和…...

深入浅出 Spring(一) | Spring简介、IOC理论推导、快速上手 Spring

1. spring 1.1 简介 Spring : 春天 —>给软件行业带来了春天 2002年&#xff0c;Rod Jahnson首次推出了Spring框架雏形interface21框架。 2004年3月24日&#xff0c;Spring框架以interface21框架为基础&#xff0c;经过重新设计&#xff0c;发布了1.0正式版。 很难想象…...

IDEA 社区版 SpringBoot不能启动

报错原因&#xff0c;Failed to load class [javax.servlet.Filter] <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope> </dependency>…...

职场常用Excel基础01-数据验证

大家好&#xff0c;excel在职场中使用非常频繁&#xff0c;今天和大家一起分享一下excel中数据验证相关的内容~ 在Excel中&#xff0c;数据验证&#xff08;Data Validation&#xff09;是一项非常有用的功能&#xff0c;它可以帮助用户限制输入到单元格中的数据类型和范围&am…...

活动预告 |【Part1】Microsoft Azure 在线技术公开课:数据基础知识

课程介绍 参加“Azure 在线技术公开课&#xff1a;数据基础知识”活动&#xff0c;了解有关云环境和数据服务中核心数据库概念的基础知识。通过本次免费的介绍性活动&#xff0c;你将提升在关系数据、非关系数据、大数据和分析方面的技能。 活动时间&#xff1a;01 月 07 日…...

RabbitMQ - 1 ( 7000 字 RabbitMQ 入门级教程 )

一&#xff1a; 在互联网行业&#xff0c;许多公司喜欢用动物命名产品或作为公司的 Logo 和吉祥物&#xff0c;比如腾讯的企鹅、京东的狗、美团的袋鼠、携程的海豚&#xff0c;而阿里更是凭借蚂蚁、飞猪、天猫、菜鸟、闲鱼、盒马等&#xff0c;打造了一座“动物园”。Rabbit&a…...

Docker Compose 构建 EMQX 集群 实现mqqt 和websocket

EMQX 集群化管理mqqt真香 目录 #目录 /usr/emqx 容器构建 vim docker-compose.yml version: 3services:emqx1:image: emqx:5.8.3container_name: emqx1environment:- "EMQX_NODE_NAMEemqxnode1.emqx.io"- "EMQX_CLUSTER__DISCOVERY_STRATEGYstatic"- …...

Spring 过滤器:OncePerRequestFilter 应用详解

在Web应用中&#xff0c;过滤器&#xff08;Filter&#xff09;是一个强大的工具&#xff0c;它可以在请求到达目标资源之前或响应返回客户端之前对请求或响应进行拦截和处理。然而&#xff0c;在某些情况下&#xff0c;我们可能希望确保过滤器逻辑在一次完整的HTTP请求中仅执行…...