229

我已经在运行 Windows XP 的机器上设置了 Android SDK 和 Eclipse,默认情况下,AVD(Android 虚拟设备)保存到“Doc​​uments and Settings\ user \.android”。有没有办法改变这种行为?我将所有其他组件保存在单独分区上的目录中,并希望合并所有内容。显然不是什么大不了的事,但是这里有人知道解决方法吗?

4

22 回答 22

305

添加新的用户环境变量(Windows 7):

  1. 开始菜单 > 控制面板 > 系统 > 高级系统设置(左侧)> 环境变量

  2. 添加一个指向您的主用户目录的新用户变量(在顶部):

    变量名称:ANDROID_SDK_HOME
    变量值: 您选择的目录的路径

AVD Manager 将使用此目录将其.android目录保存到其中。

对于那些可能感兴趣的人,我写了一篇关于我第一次涉足 Android 开发的博客……
Android "Hello World": a Tale of Woe

或者,您可以使用Rapid Environment Editor设置环境变量。

于 2011-01-10T15:00:29.003 回答
50

根据官方文档https://developer.android.com/studio/command-line/variables.html您应该更改ANDROID_AVD_HOME环境变量:

模拟器环境变量

默认情况下,模拟器将配置文件存储在 $HOME/.android/ 下,将 AVD 数据存储在 $HOME/.android/avd/ 下。您可以通过设置以下环境变量来覆盖默认值。emulator -avd 命令按照 $ANDROID_AVD_HOME、$ANDROID_SDK_HOME/.android/avd/ 和 $HOME/.android/avd/ 中的值顺序搜索 avd 目录。对于模拟器环境变量帮助,请在命令行中键入 emulator -help-environment。有关模拟器命令行选项的信息,请参阅从命令行控制模拟器。

  • ANDROID_EMULATOR_HOME:设置用户特定模拟器配置目录的路径。默认位置是
    $ANDROID_SDK_HOME/.android/。
  • ANDROID_AVD_HOME:设置包含所有 AVD 特定文件的目录的路径,这些文件主要由非常大的磁盘映像组成。默认位置是 $ANDROID_EMULATOR_HOME/avd/。如果默认位置的磁盘空间不足,您可能需要指定一个新位置。

更改或设置 ANDROID_AVD_HOME 后,您必须将~user/.android/avd/中的所有内容移动到新位置并将路径更改为每个模拟器的 ini 文件,只需将其替换为新路径

于 2018-03-23T17:02:56.043 回答
34

修改“C:\Documents and Settings{你的windows登录名}.android\avd\”中的文件“virtual_android2.2.ini”:

target=android-8
path=E:\android_workspace\avd\virtual_android2.2.avd

并将文件夹“virtual_android2.2.avd”从“C:\Documents and Settings{your windows login}.android\avd\”移动到“E:\android_workspace\avd\”。

于 2010-12-24T04:33:48.480 回答
22

将您的移动.android到您想要的任何地方。

然后,创建一个符号链接,如下所示:

# In your home folder
$ ln -s /path/to/.android/ .

这只是告诉 Linux 每当路径 ~/.android被任何应用程序引用时,将其链接到/path/to/.android.

于 2015-06-03T08:18:49.613 回答
17

转到 Android 工具目录。编辑 android.bat 命令文件。在命令文件的大约末尾,找到类似于以下内容的行

call %java_exe% -Djava.ext.dirs=%java_ext_dirs% -Dcom.android.sdkmanager.toolsdir="%tools_dir%" -Dcom.android.sdkmanager.workdir="%work_dir%" -jar %jar_path% %*

并更换

call %java_exe%

call %java_exe% -Duser.home={your_prefer_dir}

其中 {your_prefer_dire} 是您的首选目录,不带大括号但添加双引号,

例如

call %java_exe% -Duser.home="E:\Program Files (x86)\android-sdk-windows"
于 2010-07-11T11:53:37.030 回答
7

看看这个。使用android创建命令avd可以指定放置文件的位置。

-p --path     Location path of the directory where the new AVD will be created
于 2010-05-16T04:44:42.260 回答
7

您可以更改新 AVD 的 .ini 文件:

target=android-7
path=C:\Users\username\.android\avd\VIRTUAL_DEVICE_NAME.avd

我不知道如何指定 .ini 文件的存储位置:)

于 2010-06-23T08:09:16.283 回答
7

对于 Windows 10 上的 Visual Studio 2017

C:\Users\YOURUSERNAME\.android文件夹复制到(例如)E:\avd

打开环境变量窗口:

  1. 进入设置并单击系统。
  2. 在左侧,单击关于,然后选择底部的系统信息。
  3. 在新窗口中,单击左侧的高级系统设置。
  4. 单击结果窗口底部的环境变量。

添加一个新变量:

  • 变量的名称:ANDROID_SDK_HOME
  • 变量值:目录的路径(例如E:\avd

不要包含.android在变量值中。

重新启动 Visual Studio。

如需更改 SDK 和 NDK 位置,请访问:

工具 -> 选项 -> Xamarin -> Android 设置

于 2017-07-13T05:34:04.260 回答
5

在 Windows 10 中,我遇到了这个问题,因为我的 C 驱动器已满,我需要可用空间,AVD 文件夹有 14 gig 空间,所以我需要将该文件夹移动到另一个驱动程序,第一个答案对我不起作用,所以我测试了另一种方法解决这个问题,如果你有同样的问题,我给你拍张照片,你不需要将 .android 文件夹中的所有文件移动到另一个驱动器(这种方式不起作用)只需将 avd 文件夹移动到...... .android\avd 到另一个驱动器并打开 .ini 文件并将 avd 文件夹路径从该文件更改为新路径。像这张图片:

图片帮助您了解如何将旧路径更改为新路径

我希望这对你有用。

注意:注意 ini 文件中路径前后有一个单独的字符,你看不到,如果你删除了那个字符,它就不起作用

于 2017-10-15T21:42:25.573 回答
4

环境变量ANDROID_AVD_HOME可用于定义 AVD 管理器应在其中查找 AVD INI 文件的目录,因此可用于更改虚拟设备的位置;

默认值%USERPROFILE%\.android\avd在 Windows(或~/.android/avdLinux)上。

还可以为%USERPROFILE%\.androidWindows 上的整个目录创建一个链接(或~/.android在 Linux 上为目录创建一个符号链接)。

移动 AVD 时,path需要相应更新 AVD INI 文件中的条目。

于 2016-10-15T01:40:17.280 回答
3

另一种指定 ANDROID_SDK_HOME 而不会弄乱环境变量(尤其是在使用 ec2 时)的方法是简单地创建 eclipse 的快捷方式并将以下内容添加为目标

C:\Windows\System32\cmd.exe /C "setx ANDROID_SDK_HOME你的 AVD 路径/M &你的 ECLIPSE.EXE 路径"

这将在您启动 eclipse 时将 ANDROID_SDK_HOME 设置为系统变量。

HTH 保罗

于 2011-04-14T20:19:23.487 回答
3

主要有 4 个步骤 1. 将 .android 文件夹复制到您想要的位置,就像我在D:\Android\.android 2. 在环境变量中设置 ANDROID_AVD_HOME 一样ANDROID_AVD_HOME D:\Android\.android\avd 3. 用新位置更改 avd name.ini 文件内容 avd.ini.encoding=UTF-8 path=D:\Android\.android\avd\Pixel_2_API_29.avd path.rel=avd\Pixel_2_API_29.avd target=android-29 4. 重新启动 android studio

于 2020-03-20T04:33:38.173 回答
3

请注意以下几点:修改Android工具目录中的android.bat,如上一个答案中所建议的,可能会导致问题。

如果您这样做,为了合法地将您的 .android 目录定位到非默认位置,那么 Android Studio 列出的 AVD(使用“工具 > Android > AVD Manager”)和列出的 AVD 之间可能存在不一致sdk 命令行工具“android avd”。

我想带有内部 AVD 管理器的 Android Studio 不使用 android.bat 修改后的路径;它依赖于 ANDROID_SDK_HOME 变量来定位 AVD。

我自己的测试表明,Android 工具正确使用了 ANDROID_SDK_HOME 变量。

因此,据我所知,修改android.bat并没有任何意义,应该优先使用环境变量。

于 2015-09-14T10:58:17.380 回答
3

1 - 将 AVD 移动到新文件夹

2 - 开始菜单 > 控制面板 > 系统 > 高级系统设置(左侧)> 环境变量 添加新的用户变量: 变量名称:ANDROID_AVD_HOME 变量值:您选择的目录的路径

3 - 更改文件 .INI 设置新文件夹。

4 - 打开安卓工作室

作品 - Windows 2010

更多说明:https ://developer.android.com/studio/command-line/variables

于 2020-05-01T16:00:56.387 回答
1

我认为最简单的方法是将avd文件夹从C:\Users[USER].android 文件夹移动到您想要的位置,然后在C:\Users[USER].android中创建一个同名的符号链接。

如果您想知道如何执行此操作,请先安装Link Shell Extension。文件夹移动后右键单击它并选择Pick Link Source然后右键单击 .android 文件夹并在Drop As...子菜单中选择Symbolic Link

于 2015-04-08T12:00:48.157 回答
1

就我而言,我关心的是 C: 驱动器磁盘空间。所以我所做的是将“.avd”文件夹(不是文件)复制到其他驱动器,并将“.ini”文件留在那里,但将其更改为指向移动的

于 2012-11-28T02:07:15.820 回答
1

我关注了 https://www.mysysadmintips.com/windows/clients/761-move-android-studio-avd-folder-to-a-new-location

  1. 开始将文件夹“C:\Users\user\.android\avd”复制到“D:\Android\.android\avd”(或其他)。

  2. 关闭 Android Studio 并运行模拟器。

  3. 按下Win + Break并打开Advanced System Settings。然后按Environment Variables。添加用户变量ANDROID_SDK_HOME。(我没有尝试过ANDROID_AVD_HOME。)在Variable value现场写D:\Android。如果您还将 SDK 移动到另一个文件夹,请更改ANDROID_HOME(我忘记更改它并且某些模拟器没有启动,请参阅https://stackoverflow.com/a/57408085/2914140)。

  4. 等到文件夹完成复制并启动 Android Studio。

  5. 打开Android Virtual Device Manager并查看模拟器列表。如果您没有看到模拟器并且它们存在,那么您可能在步骤 3 中输入了错误的路径到用户变量值。在这种情况下关闭 AS,更改变量并再次打开 AS。

  6. 启动任何模拟器。它会尝试恢复它的状态,但有时会失败。可能会出现黑屏而不是 Android 壁纸。

  7. 在这种情况下,您可以:

    一个。重启你的模拟器。要执行此操作,请关闭正在运行的模拟器,然后在 AVD Manager 中单击Cold Boot Now

在此处输入图像描述

湾。如果这没有帮助,请打开文件“D:\Android\.android\avd\Pixel_API_27.ini”中的模拟器设置。

在此处输入图像描述

更改新 AVD 文件夹的路径。重启模拟器。

  1. 从“C:\Users\user\.android\avd”中删除旧的 AVD 文件夹。
于 2019-03-29T16:17:00.203 回答
0

变量名:ANDROID_SDK_HOME
变量值:C:\Users>User Name

为我工作。

于 2013-01-22T10:13:57.500 回答
0

ANDROID_SDK_HOME 在 Windows 8 x64 上也为我工作,还找到所有位置(在我的情况下是 d:\.android)并删除它。你不再需要它了。

于 2013-04-24T21:20:50.807 回答
0

MacOs 获取目录广告

./emulator -help-datadir

默认目录是:

/Users/{your_computer_user_name}/.android

然后转到带有自定义模拟器目录示例路径的 avd 文件夹编辑 .ini 文件:

path=/Volumes/Macintos/_emulatorandroid/avd/Nexus_5X_API_27.avd path.rel=avd/Nexus_5X_API_27.avd target=android-27

然后保存。现在你的模拟器有变化

在此处输入图像描述

结果:

在此处输入图像描述

于 2019-03-21T04:59:35.207 回答
0

对于 Windows 10: ANDROID_SDK_HOME

这个链接帮助了我。

然后只是将“”的所有内容移动avd到新位置。现在您可能需要将每个 avds 文件中“ path=”的值更改为新位置。您可以在 Android Studioconfiguration Setting中看到旧的 avd ,它们可以正常工作。avd manager

于 2021-08-24T04:28:28.417 回答
0

在 AVD 管理器中,使用带有 的目标设置 AVD 后Google APIs,运行时出现错误。

详细信息显示:“AVD 未知目标 'Google Inc.:Google APIs:......”

在安装期间(在 Win7 系统上)我选择了一个 SDK 目录位置,而不是接受C:\Users\... 我然后将该目录添加到环境变量“路径” 命令行:android 列表目标确实显示了几个 Google api。

设置ANDROID_SDK_HOME为我的安装路径修复了 avd 运行错误。

于 2016-01-18T01:00:10.957 回答