【最全】安卓环境变量配置_android 环境变量配置-程序员宅基地

技术标签: android环境变量  Android  

正文:

安卓环境变量,一般我们配置 ANDROID_HOME 的几个变量就完,但现在,ANDROID_HOME这个变量已经被废弃了,变成了

ANDROID_SDK_ROOT,这估计是android sdk tools 26 带来的变更。低版本可以不用理会,高版本目前还可以使用旧的变量名。

一般我们配置:

%ANDROID_HOME%\tools;
%ANDROID_HOME%\platform-tools;

实际上还可以配置Android Studio的环境变量,模拟器环境变量等。还是直接参考官网吧。

 

附录:

链接:https://developer.android.google.cn/studio/command-line/variables

以下是谷歌原文:

The Android Developer Challenge is back! Submit your idea before December 2.

环境变量

您可以为 Android Studio 和命令行工具设置环境变量,以指定 SDK 的安装位置以及特定于用户的数据的存储位置等。本页介绍了最常用的环境变量。

以下示例演示了当把 SDK 安装在 E:\Android\sdk\(而不是其默认位置 $USER_HOME 或 $HOME)时,如何使用环境变量来启动模拟器。

    $ set ANDROID_SDK_ROOT=E:\Android\sdk\
    $ emulator -avd Pixel_API_25
    

 

变量参考

下表介绍了 Android SDK 工具的常用环境变量。

表 1. 环境变量

Android SDK 环境变量
ANDROID_SDK_ROOT 设置 SDK 安装目录的路径。设置后,该值通常不会更改,并且可以由同一台计算机上的多个用户共享。 ANDROID_HOME 也指向 SDK 安装目录,但已弃用。如果您继续使用它,则需遵守以下规则:
  • 如果定义了 ANDROID_HOME 并且其中包含有效的 SDK 安装,则会使用 ANDROID_HOME 的值而不是 ANDROID_SDK_ROOT 的值。
  • 如果未定义 ANDROID_HOME,则会使用 ANDROID_SDK_ROOT 中的值。
  • 如果定义了 ANDROID_HOME,但其中不存在或不包含有效的 SDK 安装,则会使用 ANDROID_SDK_ROOT 中的值。
REPO_OS_OVERRIDE 当您使用 sdkmanager 为与当前计算机不同的操作系统下载软件包时,请将此变量设置为 windowsmacosx 或 linux

注意:您可以使用 Android Studio 而不是 sdkmanager 来管理 SDK 软件包。请参阅使用 SDK 管理器更新工具

Android Studio 配置环境变量
Android Studio 配置变量包含用于自定义配置文件和 JDK 位置的设置。启动时,Android Studio 会检查这些变量的设置。如需了解详情,请参阅配置 Android Studio
STUDIO_VM_OPTIONS 设置 studio.vmoptions 文件的位置。此文件包含会影响 Java HotSpot 虚拟机性能特征的设置。您也可以从 Android Studio 中访问此文件。请参阅自定义虚拟机选项
STUDIO_PROPERTIES 设置 idea.properties 文件的位置。您可以使用此文件自定义 Android Studio IDE 属性(例如用户安装的插件的路径)以及 IDE 支持的文件大小上限。请参阅自定义 IDE 属性
STUDIO_JDK 设置运行 Studio 所使用的 JDK 的位置。当您启动 Android Studio 时,它会依次检查 STUDIO_JDKJDK_HOME 和 JAVA_HOME 环境变量。
模拟器环境变量
默认情况下,模拟器会将配置文件存储在 $HOME/.android/ 下,将 AVD 数据存储在 $HOME/.android/avd/ 下。您可以通过设置以下环境变量来替换默认设置。emulator -avd <avd_name> 命令会依次按照 $ANDROID_AVD_HOME$ANDROID_SDK_HOME/.android/avd/ 和 $HOME/.android/avd/ 的值搜索 avd 目录。

如需模拟器环境变量方面的帮助,请在命令行中输入 emulator -help-environment。如需了解 emulator 命令行选项,请参阅从命令行控制模拟器

ANDROID_EMULATOR_HOME 设置特定于用户的模拟器配置目录的路径。默认位置是 $ANDROID_SDK_HOME/.android/
ANDROID_AVD_HOME 设置包含所有 AVD 特定文件的目录的路径,这些文件大多由非常大的磁盘映像组成。默认位置为 $ANDROID_EMULATOR_HOME/avd/。如果默认位置的磁盘空间不足,则可能需要指定新位置。
Android 模拟器在启动时会查询以下环境变量。
ANDROID_LOG_TAGS 请参阅 ANDROID_LOG_TAGS
HTTP_PROXY 包含全局 http 代理的 HTTP/HTTPS 代理(主机名和端口)设置。在主机和端口之间使用英文冒号 (:) 分隔符。例如,set HTTP_PROXY=myserver:1981
ANDROID_VERBOSE 请参阅 ANDROID_VERBOSE
ANDROID_EMULATOR_HOME 请参阅 ANDROID_EMULATOR_HOME
ANDROID_SDK_ROOT 请参阅 ANDROID_SDK_ROOT
ANDROID_EMULATOR_USE_SYSTEM_LIBS 包含值 0(默认值)或 1。值为 1 表示使用系统的 libstdc++.so 文件,而不是与模拟器捆绑在一起的文件。请仅在模拟器因系统库问题而无法在 Linux 系统上启动时,才设置此环境变量。例如,某些 Linux Radeon GL 驱动程序库需要更新的 libstdc++.so 文件。

注意:无法保证将此环境变量设置为 1 就能够使模拟器正常运行。这样做能够解决只会影响很少一部分 Linux 用户的系统库问题。

快速模拟器 (QEMU) 音频
QEMU_AUDIO_DRVQEMU_AUDIO_OUT_DRVQEMU_AUDIO_IN_DRV 在 Linux 上,您可以通过将 QEMU_AUDIO_DRV 环境变量设置为以下值之一来更改模拟器的默认音频后端:
  • alsa:使用高级 Linux 音频架构 (ALSA) 后端
  • esd:使用 Enlightened Sound Daemon (EsounD) 后端
  • sdl:使用简易直控媒体层 (SDL) 音频后端(不支持音频输入)
  • oss::使用开放声音系统 (OSS) 后端
  • none::不支持音频
    set QEMU_AUDIO_DRV=alsa
    

 

您还可以通过分别为 QEMU_AUDIO_OUT_DRV 和 QEMU_AUDIO_IN_DRV 环境变量选择相应的 QEMU 值,为音频输入和音频输出使用不同的后端:

    set QEMU_AUDIO_OUT=esd
    set QEMU_AUDIO_IN=oss
    

 

如果要停用音频支持,请使用 emulator -no-audio 选项或将 QEMU_AUDIO_DRV设置为 none。在以下情况下,您可能需要停用音频:

  • 在极少数情况下,音频驱动程序可能会导致 Windows 在模拟器运行时重新启动。
  • 在某些 Linux 计算机上,如果启用了音频支持,模拟器可能会在启动时卡住。
adb 环境变量
ANDROID_SERIAL 可使用此变量为 adb 命令提供模拟器序列号,例如 emulator-5555。如果您设置了此变量,但又使用 -s 选项从命令行指定序列号,则命令行输入将取代 ANDROID_SERIAL 的值。

以下示例会设置 ANDROID_SERIAL 并调用 adb install helloworld.apk,然后该 APK 会在 emulator-5555 上安装 Android 应用软件包。

    set ANDROID_SERIAL=emulator-555
    adb install helloWorld.apk
    

 

adb logcat 环境变量
ANDROID_LOG_TAGS 当您从开发计算机运行 logcat 时,可使用此环境变量设置默认过滤器表达式。例如:
    set ANDROID_LOG_TAGS=ActivityManager:I MyApp:D *:.
    

 

如需了解详情并查看示例,请参阅过滤日志输出

ADB_TRACE 包含要记录的调试信息的逗号分隔列表。具体值可以是:alladbsocketspacketsrwxusbsyncsysdepstransport 和 jdwp

要显示 adb 客户端和 adb 服务器的 adb 日志,请将 ADB_TRACE 设置为 all,然后调用 adb logcat 命令,如下所示:

    set ADB_TRACE=all
    adb logcat
    

 

ANDROID_VERBOSE 包含模拟器使用的详细输出模式选项的逗号分隔列表。以下示例展示了使用 debug-socket 和 debug-radio 调试标记定义的 ANDROID_VERBOSE
set ANDROID_VERBOSE=socket,radio

 

不受不支持的调试标记会被忽略。如需详细了解调试标记,请使用 emulator -help-debug-tags

如何设置环境变量

以下示例展示了如何在终端窗口和 shell 脚本中针对不同的操作系统设置环境变量。对于终端窗口中的变量设置,只要窗口不关闭,这些设置就会一直存在。而 shell 脚本中的变量设置,则会在登录会话之间保持不变。

Windows:在终端窗口中输入以下命令:

set HTTP_PROXY=myserver:1981

 

或者,通过 Windows 界面将该命令行添加到 shell 脚本中。如需了解具体操作方法,请查看您的 Windows 版本所适用的文档。

Mac 和 Linux:在终端窗口中输入以下命令:

export HTTP_PROXY=myserver:1981

 

或者,将该命令行添加到 ~/.bash_profile 文件中,并对该文件执行 source 命令,如下所示:

export HTTP_PROXY=myserver:1981

 

$ source ~/.bash_profile

 

Was this page helpful?

Content and code samples on this page are subject to the licenses described in the Content License. Java is a registered trademark of Oracle and/or its affiliates.

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Mingyueyixi/article/details/103227271

智能推荐

【Android开发--新手必看篇】GridView 网格视图_调整verticalgridview之间的间隔-程序员宅基地

文章浏览阅读189次。Android笔记​ ——高级控件之GridView【若对该知识点有更多想了解的,欢迎私信博主~~】GridView一:使用​ 在Activity布局文件中放置GridView控件<?xml version="1.0" encoding="utf-8"?><LinearLayout ="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.andr_调整verticalgridview之间的间隔

Netty学习笔记五:Netty源码分析_netty 源码学习-程序员宅基地

文章浏览阅读322次。Netty学习笔记五:Netty源码分析EventLoop和EventLoopGroup线程模型高性能RPC框架3个要素一、IO模型(五种IO模型)二、数据协议(http/protobuf/Thrift)三、线程模型(主从线程组模型)EventLoopEventLoop好比一个线程,1个EventLoop可以服务多个Channel,一个Channel只有一个EventL..._netty 源码学习

Kyligence 发布数据和分析领域垂直大模型司南(Compass)_司南模型怎么测试-程序员宅基地

文章浏览阅读140次。12 月 19 日,跬智信息(Kyligence)正式发布数据和分析领域垂直大模型司南(Compass)(以下简称“司南大模型”)。基于多年数据和分析领域的实践积累和全行业指标洞察的海量语料,Kyligence司南大模型已具备自然语言对话分析、指标搜索与推荐、自动化数据洞察、KPI 评估、智能决策建议等核心能力。_司南模型怎么测试

MySQL数据库Insert语句慢SQL处理-程序员宅基地

文章浏览阅读3.8k次。#问题描述insert into …普通的插入语句,经常出现耗时2s以上#数据状态1.表数据量大,每天产生200万条数据2.高并发插入#问题解决1.由于表中数据量庞大,建议数据归档处理,冷热处理2.表中有过多索引,当数据insert时,索引会重排产生太多的io操作。导致缓慢,有必然要的只保留主键。3.表的数据库引擎,默认InnerDB,若数据不重要,可以使用MyISAM......

EasyDarwin开源流媒体云平台之EasyRMS录播服务器功能设计_开源录播系统-程序员宅基地

文章浏览阅读3.6k次。需求背景EasyDarwin开发团队维护EasyDarwin开源流媒体服务器也已经很多年了,之前也陆陆续续尝试过很多种服务端录像的方案,有:在EasyDarwin中直接解析收到的RTP包,重新组包录像;也有:在EasyDarwin中新增一个RecordModule,再以RTSPClient的方式请求127.0.0.1自己的直播流录像,但这些始终都没有成气候;我们的想法是能够让整套EasyDarwin_开源录播系统

oracle Plsql 执行update或者delete时卡死问题解决办法_oracle delete update 锁表问题-程序员宅基地

文章浏览阅读1.1w次。今天碰到一个执行语句等了半天没有执行:delete table XXX where ......,但是在select 的时候没问题。后来发现是在执行select * from XXX for update 的时候没有commit,oracle将该记录锁住了。可以通过以下办法解决: 先查询锁定记录 Sql代码 SELECT s.sid, s.seri_oracle delete update 锁表问题

随便推点

java/php/node.js/python病人跟踪治疗信息管理系统【2024年毕设】-程序员宅基地

文章浏览阅读21次。springboot基于springbootvue框架的零售店记账系统。springboot基于微信小程序的游戏账号交易系统。springboot基于Android的疫情信息系统。springboot微信小程序的健康体检预约系统。ssm基于微信小程序的汽车共享充电桩预约系统。jsp基于JavaWeb的B2C电商商城系统。ssm基于JavaWeb的班级量化评比系统。ssm基于Android的编程语言学习系统。ssm基于微信小程序的古诗词学习与推广系统。springboot电子银行业务办理系统。

空间数据引擎oracle_空间数据库引擎及其解决方案分析-程序员宅基地

文章浏览阅读350次。4WWW.GWN.COM.CN地理信息世界GEOMATICSWORLD技术应用0引言地理信息系统(GIS)以空间数据为研究对象,在实现对空间数据存储和操作的基础上进行空间分析和应用。以往受关系数据库不支持空间数据管理的限制,传统的GIS软件采用分离的方式管理数据,即空间数据采用文件形式和目录结构,属性数据由内置的关系型数据库进行管理。分离体系结构造成空间数据管理效率低下,无法获得数据库系统的有效支..._oracle空间数据库引擎

java发布rest服务器,使用Java restlet发布到服务器-程序员宅基地

文章浏览阅读177次。我正在尝试使用restlet向服务器发布JSONO对象。当我尝试使用POSTMAN发布它可以发布,但是当我尝试从使用restlet的java代码发布时,我得到一个错误:Unable to find a converter for this objectand Bad Request (400) - The request could not be understood by the server ..._触发 org.restlet.resource.resourceexception

使用flex-wrap实现弹性盒自动换行-程序员宅基地

文章浏览阅读2w次,点赞6次,收藏10次。布局的时候,我们常常会需要一行排列3/4/5/6个盒子,必要时自动换行,这时可以借助CSS3中的flex-wrap属性。flex-wrap: nowrap|wrap|wrap-reverse|initial|inherit;nowrap为默认值,wrap必要时实现自动换行,reverse必要时换行并反向排列关键是在父元素中设置flex-wrap值为wrap, 然后是设置子元素的wi...

改变Android Studio的背景background_as怎么设置背景-程序员宅基地

文章浏览阅读2.7k次,点赞2次,收藏5次。改变Android Studio的背景background我们先点File然后再点Settings里的Appearance,点击Theme换成Darcula 把白色换成黑色,这样的好处是换成background是图片比较清晰。此处正式开始AS换背景这里我们颜色从白色换成了黑色,先点File里Settings的Appearance然后点background image把你喜欢的图片放进去(图片放在D盘自己新建的文件)..._as怎么设置背景

桩筏有限元中的弹性板计算_专栏 l 增材制造点阵结构在压力容器优化设计中的应用...-程序员宅基地

文章浏览阅读179次。“增材制造是未来制造业的发展趋势,其优势显而易见,它可以实现传统加工工艺难以制造的设计,比如复杂薄壁结构、点阵结构、一体化结构等。其中,点阵结构作为一种新型的轻量化结构,具有良好的比刚度、比强度等力学性能。传统加工工艺很难制造点阵结构,3D打印技术的快速发展使得点阵结构的制造更加具有可行性。”本期谷.专栏列举了面向增材制造的点阵加筋一体化压力容器的设计与分析案例,仿真技术作为正向设计体系..._点阵结构的等效属性计算