Android SDK和AVD管理器-无法在正确的文件位置创建AVD

9
当试图使用android SDK AVD管理器创建AVD时,我遇到了“错误:null”。这种情况一直发生是因为SDK管理器正在寻找位于错误位置的“现有Android虚拟设备列表”。 我该如何更改文件位置?
5个回答

6

我遇到了类似的问题。我通过在启动脚本中设置环境变量ANDROID_SDK_HOME来解决了这个问题。路径应该是你想要的.android文件夹的位置,不包括最后一个斜杠。例如:

SET ANDROID_SDK_HOME=C:\Users\toybuilder\Downloads

3
我上个周末遇到了同样的问题。在我的情况下,我能够创建AVD,但无法启动它们。
问题是由于AVD Manager将AVD创建在与模拟器尝试启动AVD不同的目录中引起的。
在我的情况下,AVD Manager最初报告现有Android虚拟设备列表位于C:\ Users \ toybuilder \ Downloads \ .android \ avd
结果发现我的Java运行时(在这种情况下,JDK 1.6u24)报告C:\ Users \ toybuilder \ Downloads为我的主目录(user.home属性)。我首先通过Eclipse确认了这一点:
在Eclipse中,转到: Eclipse菜单:帮助->关于Eclipse 单击[安装详细信息] 单击[配置]选项卡: 文本框填充了Eclipse环境的扩展转储。 查找user.home值。在我的情况下,该行读取: user.home = C:\ Users \ toybuilder \ Downloads

原来Java运行时有一个长期存在的Java bug(将近9年)影响了它如何确定用户主目录属性 - 如StackOverflow上其他地方所讨论的那样

在我的情况下,这个错误的行为是由错误的Windows文件夹重定向引起的。我曾经不小心将我的桌面文件夹移动到下载目录中。虽然我已经解决了问题,但它仍然在我的注册表中留下了一个条目,其中包含指向下载目录的桌面文件夹重定向。有一个HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Desktop注册表键,指向错误的路径C:\Users\toybuilder\Downloads\Desktop。

Java运行时显然将user.home设置为“Desktop”/..(即Downloads目录),而其他一些机制正在正确的位置解析主目录(可能是Windows %userprofile%环境值) - 因此当模拟器启动时,它无法找到.android / avd目录,因为它是从不同的起始目录查找的。删除错误的重定向注册表键后,问题消失了。

2

如果您使用了“文件夹重定向”的Windows系统,可能会遇到此问题。如果您登录了域并且管理员为您的主目录设置了重定向,则eclipse/android SDK无法正确读取某些文件。您可以尝试以下步骤:

  1. 关闭Eclipse

  2. 只需设置一个用户环境变量,例如: 变量名称:ANDROID_SDK_HOME 变量值:C:\Users\{your login}

  3. 将“.android”文件夹从“重定向”文件夹复制到C:\Users\{your login}

  4. 启动Eclipse。

现在AVDs应该可以正常工作了。


2

我有一个解决此错误的方法:

  • 右键单击文件夹"C:\ User \ yournamecomputer.android"并取消只读选项

对我有效 :D


1
SET ANDROID_SDK_HOME variable not working for me.
  1. 打开Eclipse
  2. 点击窗口菜单,选择“首选项”
  3. 从左侧选择Android
  4. 现在设置SDK位置,例如:E:\android\sdk,而不是使用相对路径../sdk,即应该设置绝对路径而不是相对路径

这对我有用。

希望这能帮助某些人并节省时间。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接