我已经在运行Windows XP的机器上设置了Android SDK和Eclipse, avd (Android虚拟设备)保存到“文档和设置\user\。默认为Android。有没有办法改变这种行为?我把所有其他组件都保存在一个单独的分区上的目录中,并希望所有内容都得到整合。显然不是什么大问题,但有人知道解决办法吗?


当前回答

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

Start copying a folder "C:\Users\user\.android\avd" to "D:\Android\.android\avd" (or something else). Close Android Studio and running emulators. Press Win + Break and open Advanced System Settings. Then press Environment Variables. Add a user variable ANDROID_SDK_HOME. (I didn't experiment with ANDROID_AVD_HOME.) In Variable value field write D:\Android. If you also moved SDK to another folder, change ANDROID_HOME (I forgot to change it and some emulators didn't launch, see https://stackoverflow.com/a/57408085/2914140). Wait until the folder will finish copying and start Android Studio. Open Android Virtual Device Manager and see a list of emulators. If you don't see emulators and they existed, then probably you entered wrong path into user variable value in step 3. In this case close AS, change the variable and open AS again. Start any emulator. It will try to restore it's state, but it sometimes fails. A black screen can appear instead of Android wallpaper. In this case you can: a. Restart your emulator. To do this close running emulator, then in AVD Manager click Cold Boot Now.

b.如果这没有帮助,打开模拟器设置,在文件“D:\Android\. Android\ avd\Pixel_API_27.ini”中找到。

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

删除旧的AVD文件夹从“C:\Users\user\.android\ AVD”

其他回答

在AVD管理器中,使用谷歌api的目标设置AVD后,运行时得到错误。

详细信息显示:“AVD未知目标'谷歌Inc.:谷歌api:......”

在安装期间(在Win7系统上),我选择了一个SDK目录位置,而不是接受c:\ users \… 然后我将该目录添加到环境变量path中 命令行:android列表目标确实显示了两个谷歌api。

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

请注意:根据之前的回答,修改Android tools目录下的Android .bat可能会导致问题。

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

我认为Android Studio,其内部AVD管理器,不使用Android .bat修改路径;它依赖ANDROID_SDK_HOME变量来定位avd。

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

因此,就我所知,修改android.bat没有任何意义,使用环境变量应该是首选。

修改“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

移动文件夹virtual_android2.2。从“C:\文档和设置{您的windows登录}。android\avd\变成E:\android_workspace\avd\。

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

默认值为%USERPROFILE%\。android\avd在Windows(或~/。Linux上的android/avd)。

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

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

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

Emulator Environment Variables By default, the emulator stores configuration files under $HOME/.android/ and AVD data under $HOME/.android/avd/. You can override the defaults by setting the following environment variables. The emulator -avd command searches the avd directory in the order of the values in $ANDROID_AVD_HOME, $ANDROID_SDK_HOME/.android/avd/, and $HOME/.android/avd/. For emulator environment variable help, type emulator -help-environment at the command line. For information about emulator command-line options, see Control the Emulator from the Command Line. ANDROID_EMULATOR_HOME: Sets the path to the user-specific emulator configuration directory. The default location is $ANDROID_SDK_HOME/.android/. ANDROID_AVD_HOME: Sets the path to the directory that contains all AVD-specific files, which mostly consist of very large disk images. The default location is $ANDROID_EMULATOR_HOME/avd/. You might want to specify a new location if the default location is low on disk space.

在修改或设置ANDROID_AVD_HOME后,你必须将所有内容移动到~user/。Android /avd/到你的新位置,并改变路径到每个模拟器的ini文件,只需用你的新路径替换它