可以更改Android虚拟设备的保存位置吗?

pri*_*326 173 windows android android-virtual-device

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

wlo*_*her 228

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

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

  2. 添加指向主用户目录的新用户变量(位于顶部):

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

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

对于那些可能感兴趣的人,我写了关于我第一次涉足Android开发的博客......
Android"Hello World":一个祸患的故事

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

  • ANDROID_AVD_HOME环境变量可能比ANDROID_SDK_HOME更受欢迎,因为它可以避免移动存储在〜/ .android中的任何用户特定配置,因此其他用户/发行版可以使用相同的AVD.在Linux Debian上工作得很好. (8认同)
  • +1为您的信息.但我正在使用XP.对我来说这将在重启后起作用.谢谢. (6认同)
  • 或者直接输入 cmd `setx ANDROID_SDK_HOME D:\your\path\here` (2认同)

diy*_*ism 20

修改"C:\ Documents and Settings {your windows login} .android\avd \"中的文件"virtual_android2.2.ini":

target=android-8
path=E:\android_workspace\avd\virtual_android2.2.avd
Run Code Online (Sandbox Code Playgroud)

而从移动文件夹 "virtual_android2.2.avd" "C:\ Documents和Settings {您的Windows登录} .android\AVD \" 到 "E:\ android_workspace\AVD \".


小智 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% %*
Run Code Online (Sandbox Code Playgroud)

并替换

call %java_exe%
Run Code Online (Sandbox Code Playgroud)

call %java_exe% -Duser.home={your_prefer_dir}
Run Code Online (Sandbox Code Playgroud)

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

例如

call %java_exe% -Duser.home="E:\Program Files (x86)\android-sdk-windows"
Run Code Online (Sandbox Code Playgroud)

  • 这对我有用,而接受的答案却没有.此外,这实际上回答了OP提出的问题,即如何从用户主目录更改为另一个AVD目录,而不是相反. (2认同)

ps9*_*s95 10

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

然后,创建一个这样的符号链接:

# In your home folder
$ ln -s /path/to/.android/ .android
Run Code Online (Sandbox Code Playgroud)

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


Leo*_*puy 10

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

模拟器环境变量

默认情况下,模拟器将配置文件存储在$ HOME/.android /和/ home/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文件,只需将其替换为新路径

  • 这应该是答案。谢谢。 (5认同)
  • 我遇到了 VSCode 在将模拟器移至 d: 后看不到模拟器的问题,因为我只设置了 ANDROID_AVD_HOME。添加 ANDROID_EMULATOR_HOME 解决了这个问题。谢谢。 (2认同)

Ali*_*efi 9

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

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

我希望这对你有用。

注意:请注意 ini 文件中路径前后的单独字符,您看不到该字符,如果删除该字符则不起作用


小智 7

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

target=android-7
path=C:\Users\username\.android\avd\VIRTUAL_DEVICE_NAME.avd
Run Code Online (Sandbox Code Playgroud)

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


Mac*_*rse 6

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

-p --path     Location path of the directory where the new AVD will be created
Run Code Online (Sandbox Code Playgroud)


use*_*140 6

对于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设置