android开发环境搭建

android开发环境搭建

  • Android 开发环境搭建
    • 1.JDK安装与配置
      • 1.1 Jdk官方下载
      • 1.2 JDK安装
      • 1.3 环境变量配置
      • 1.4 新建JAVA_HOME
      • 1.5 修改Path变量
      • 1.6 新建classpath
      • 1.7 验证环境是否配置完成
    • 2.开发工具二选一
      • 1.如何创建一个工程
      • 2.工程的目录结构的了解
      • 3.与开发的相关的常规视图
      • 4.我们是在哪里写代码的
      • 5.如何创建启动AVD安卓虚拟机
      • 6.如何将写好的安卓程序加载到AVD上
      • 7.当程序报错时,使用logcat查看日志信息
      • 8.通过logcat信息,找到错误代码并改正
      • 9.程序运行无误后签名打包成APK文件
    • 3.相关术语的解析
    • 4.ADB命令行的一些指令

Android 开发环境搭建

现在主流的Android开发环境有:
①Eclipse + ADT + SDK
②Android Studio + SDK
③IntelliJ IDEA + SDK
现在国内大部分开发人员还是使用的Eclipse,而谷歌宣布不再更新ADT后,并且官网也去掉了集成Android开发环境的Eclipse下载链接,各种现象都表示开发者最后都终将过渡到Android Studio,当然这段过渡时间会很长,但如果你是刚学Android的话建议直接冲Android Studio着手;而且很多优秀的开源项目都是基于Android Studio!当然,在本教程中对两种开发环境都会进行一个介绍,用哪个取决与你自己~
还有一个IntelliJ,和Android Studio差不多的,并不对此进行讲解!

1.JDK安装与配置

1.1 Jdk官方下载

JDK 可以到官网进行下载:Jdk官方下载

1.2 JDK安装

傻瓜式的下一步即可!

1.3 环境变量配置

配置环境变量是为了方便我们一些命令行的操作,后续会用到!
右键我的电脑——>高级——>环境变量

android开发环境搭建

1.4 新建JAVA_HOME

android开发环境搭建

1.5 修改Path变量

修改Path变量,别把原本的东西删掉!

android开发环境搭建

1.6 新建classpath

android开发环境搭建

1.7 验证环境是否配置完成

打开电脑的cmd(命令行),win键 + R 输入cmd,然后在命令行依次javac和java,出现如图效果表示配置完成:
android开发环境搭建





2.开发工具二选一

Android Studio建议还是先使用Eclipse进行Android开发,下面先说下我们熟悉IDE开发APP的流程,按照下述流程来熟悉IDE的使用:

1.如何创建一个工程

2.工程的目录结构的了解

3.与开发的相关的常规视图

4.我们是在哪里写代码的

5.如何创建启动AVD安卓虚拟机

6.如何将写好的安卓程序加载到AVD上

7.当程序报错时,使用logcat查看日志信息

8.通过logcat信息,找到错误代码并改正

9.程序运行无误后签名打包成APK文件

然后下面两个选一个,开始我们的Android开发之路吧!
Eclipse + ADT + SDK:
Android Studio + SDK:

3.相关术语的解析

Dalvik: Android特有的虚拟机,和JVM不同,Dalvik虚拟机非常适合在移动终端上使用!
AVD: (android virtual machine):安卓虚拟设备,就是安卓的模拟器
ADT: (android development tools)安卓开发工具
SDK:(software development kit)软件开发工具包,就是安卓系统,平台架构等的工具集合,如adb.exe
DDMS:(dalvik debug monitor service)安卓调试工具
adb:安卓调试桥,在sdk的platform-tools目录下,功能很多,命令行必备
DX工具:将.class转换成.dex文件
AAPT:(android asset packing tool),安卓资源打包工具
R.java文件:由aapt工具根据App中的资源文件自动生成,可以理解为资源字典
AndroidManifest.xml:app包名 + 组件声明 + 程序兼容的最低版本 + 所需权限等程序的配置文件

4.ADB命令行的一些指令

执行ADB指令之前我们还需要为我们的SDK配置一下环境变量 Step 1:新建一个ANDROID_HOME的环境变量,把sdk根目录地址贴上去:
android开发环境搭建

Step 2:更新path环境变量,在path开头加上%ANDROID_HOME%\tools; 即可配置完了,接下来就来学习指令了。
android开发环境搭建

如若本文能帮您, 希望您能关注Python老吕的CSDN博客 ;
您可以在本文进行评论,老吕将努力快速回复,和您近距离交流各种问题;
博主ID:Python老吕,希望大家点赞、评论、收藏。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

记录WiFi转WDS桥接再转网线

第一步: 把LAN口修改为 和 主路由器的前三位段位编码一致,最后一位设置大于250,减少抢IP的可能性。这个步骤是修改 桥接路由器的登录IP 第二部: 设置IP池。网关和dns服务器都是同一个,用手机连接主路由器wifi可以找到 …

【Flink】Flink 的八种分区策略(源码解读)

Flink 的八种分区策略(源码解读) 1.继承关系图1.1 接口:ChannelSelector1.2 抽象类:StreamPartitioner1.3 继承关系图 2.分区策略2.1 GlobalPartitioner2.2 ShufflePartitioner2.3 BroadcastPartitioner2.4 RebalancePartitioner2…

HTML 学习笔记(五)超链接

HYperText 超文是用超链接的方式&#xff0c;将不同空间的文字信息组合在一起的网状文其就像一个桥梁&#xff0c;建立了不同页面中的联系&#xff0c;实现了访问不同网站中页面的功能 <!DOCTYPE html> <html lang"en"><head><meta charset&qu…

深度学习+感知机

深度学习感知机 1感知机总结 2多层感知机1XOR2激活函数3多类分类总结 3代码实现 1感知机 是个很简单的模型,是个二分类的问题。 感知机&#xff08;perceptron&#xff09;是Frank Rosenblatt在1957年提出的一种人工神经网络&#xff0c;被视为一种最简单形式的前馈神经网络&…

【C语言】深入理解指针(进阶篇)

一、数组名的理解 数组名就是地址&#xff0c;而且是数组首元素的地址。 任务&#xff1a;运行以下代码&#xff0c;看数组名是否是地址。 #include <stdio.h> int main() {int arr[] { 1,2,3,4,5,6,7,8,9,0 };printf("&arr[0] %p\n", &arr[0]);pri…

[Java安全入门]三.CC1链

1.前言 Apache Commons Collections是一个扩展了Java标准库里的Collection结构的第三方基础库&#xff0c;它提供了很多强大的数据结构类型和实现了各种集合工具类。Commons Collections触发反序列化漏洞构造的链叫做cc链&#xff0c;构造方式多种&#xff0c;这里先学习cc1链…

Dubbo-记录

1.概念 Apache Dubbo 是一款 RPC 服务开发框架&#xff0c;用于解决微服务架构下的服务治理与通信问题&#xff0c;官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与通信能力&#xff0c; 利用 Dubbo 提供的丰富服务治理…

C语言--函数指针变量和函数指针数组的区别(详解)

函数指针变量 函数指针变量的作用 函数指针变量是指向函数的指针&#xff0c;它可以用来存储函数的地址&#xff0c;并且可以通过该指针调用相应的函数。函数指针变量的作用主要有以下几个方面&#xff1a; 回调函数&#xff1a;函数指针变量可以作为参数传递给其他函数&…

【数仓】通过Flume+kafka采集日志数据存储到Hadoop

相关文章 【数仓】基本概念、知识普及、核心技术【数仓】数据分层概念以及相关逻辑【数仓】Hadoop软件安装及使用&#xff08;集群配置&#xff09;【数仓】Hadoop集群配置常用参数说明【数仓】zookeeper软件安装及集群配置【数仓】kafka软件安装及集群配置【数仓】flume软件安…

【深度学习笔记】6_10 双向循环神经网络bi-rnn

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;部分标注了个人理解&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 6.10 双向循环神经网络 之前介绍的循环神经网络模型都是假设当前时间步是由前面的较早时间步的序列决定的&#xff0c;因此它们都将信…

【Leetcode打卡】递归回溯

【Leetcode打卡】递归回溯 784. 字母大小写全排列 class Solution { public:int find(string s,int pos){int ipos;while(i<s.size()){if(isalpha(s[i])){return i;}i;}return -1;}void turn(string& s,int pos){if(islower(s[pos])){s[pos]toupper(s[pos]);}else{s[po…

ChatGPT提示词工程:prompt和chatbot

ChatGPT Prompt Engineering for Developers 本文是 https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/ 这门课程的学习笔记。 ChatGPT提示词工程&#xff1a;prompt和chatbot 文章目录 ChatGPT Prompt Engineering for DevelopersWhat …

Linux下使用open3d进行点云可视化(.bin文件)

整个场景可视化&#xff1a; import numpy as np import open3d as o3ddef read_kitti_bin_point_cloud(bin_file):# 加载.bin文件point_cloud_np np.fromfile(bin_file, dtypenp.float32).reshape(-1, 4)# 仅使用X, Y, Z坐标&#xff0c;忽略反射率point_cloud_o3d o3d.geo…

代码训练LeetCode(6)编辑距离

代码训练(6)LeetCode之编辑距离 Author: Once Day Date: 2024年3月9日 漫漫长路&#xff0c;才刚刚开始… 全系列文章可参考专栏: 十年代码训练_Once-Day的博客-CSDN博客 参考文章: 72. 编辑距离 - 力扣&#xff08;LeetCode&#xff09;力扣 (LeetCode) 全球极客挚爱的技…

44岁「台偶一哥」成现实版「王子变青蛙」,育一子一女成人生赢家

电影《周处除三害》近日热度极高&#xff0c;男主角阮经天被大赞演技出色&#xff0c;最让人意想不到&#xff0c;因为该片在内地票房报捷&#xff0c;很多人走去恭喜另一位台湾男艺人明道&#xff0c;皆因二人出道时外貌神似&#xff0c;至今仍有不少人将两人搞混。 多年过去&…

RNN预测正弦时间点

import torch.nn as nn import torch import numpy as np import matplotlib matplotlib.use(TkAgg) from matplotlib import pyplot as plt # net nn.RNN(100,10) #100个单词&#xff0c;每个单词10个维度 # print(net._parameters.keys()) #序列时间点预测num_time_steps 50…

什么是RabbitMQ的死信队列

RabbitMQ的死信队列&#xff0c;是一种用于处理消息&#xff0c;处理失败或无法路由的消息的机制。它允许将无法被正常消费的消息重新路由到另一个队列&#xff0c;以便稍后进行进一步的处理&#xff0c;分析或排查问题。 当消息队列里面的消息出现以下几种情况时&#xff0c;就…

ChatGPT 控制机器人的基本框架

过去的一年&#xff0c;OpenAI的chatGPT将自然语言的大型语言模型&#xff08;LLM&#xff09;推向了公众的视野&#xff0c;人工智能AI如一夜春风吹遍了巴黎&#xff0c;全世界都为AI而疯狂。 OpenAI ChatGPT是一个使用人类反馈进行微调的预训练生成文本模型。不像以前的模型主…

每日一练:LeeCode-209、长度最小的子数组【滑动窗口+双指针】

每日一练&#xff1a;LeeCode-209、长度最小的子数组【滑动窗口双指针】 思路暴⼒解法滑动窗口 本文是力扣 每日一练&#xff1a;LeeCode-209、长度最小的子数组【滑动窗口双指针】 学习与理解过程&#xff0c;本文仅做学习之用&#xff0c;对本题感兴趣的小伙伴可以出门左拐 L…

《剑指 Offer》专项突破版 - 面试题 76 : 数组中第 k 大的数字(C++ 实现)

目录 详解快速排序 面试题 76 : 数组中第 k 大的数字 详解快速排序 快速排序是一种非常高效的算法&#xff0c;从其名字可以看出这种排序算法最大的特点是快。当表现良好时&#xff0c;快速排序的速度比其他主要对手&#xff08;如归并排序&#xff09;快 2 ~ 3 倍。 快速排…