7

我安装了 Android Studio(1.5.1——构建细节见图片)。 在此处输入图像描述

安装时我选择了自定义选项,这样我就可以安装一个特定的路径。我知道我的 %SystemDrive% 指向一个网络位置,我想安装到我的本地磁盘。

因此,这意味着默认情况下,应用程序将安装到:\networkpath\users\myUserName\Android\SDK

但是,由于我选择了自定义安装,所以我选择了本地路径:c:\users\myUsername\Android\SDK

项目创建和构建工作正常

一切似乎都安装得很好,我能够创建一个新项目并毫无问题地构建它。

但是,当我尝试运行构建然后基本上以静默方式失败时。模拟器从未出现,也没有发生错误。Android Monitor 仅显示一条消息,指出未检测到连接设备。 AVD 管理器

幸运的是,我知道一些关于检查模拟器发生了什么的知识,然后我打开了 AVD Manager。列出的设备显示错误。我右键单击设备并选择“查看详细信息”。那时 AVD 管理器显示它正在尝试从网络路径读取,即使我在自定义安装中更改了它。\networkPath\Users\myUserName\Windows.android\avd\Nexus4.avd 和 \networkPath\Users\myUserName\Windows.android\avd\Nexus4.ini

注册表编辑

我关闭了 Android Studio。然后我打开 regedit 并编辑了以下位置的值: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList 最初如下所示: 注册表值

并更改它们,使它们都直接指向 c:\ 驱动器(而不是 %systemdrive%)

环境变量:ANDROID_SDK_HOME

我发现其他人提到了 ANDROID_SDK_HOME 环境变量,我注意到我的机器根本没有定义该值,所以我添加它并将其设置如下:c:\users\myUsername\Android\SDK

然后我再次启动了 Android Studio 并启动了 AVD 管理器。这次没有显示设备,而是 AVD Manager 提示我使用以下窗口创建一个: AVD Manager 创建新设备

现在,我正在尝试使用 Google API 下载其中一台设备,但每次我这样做时,它们都会成功下载并安装,但随后会从列表中消失。请注意,在下图中,没有用于 arm 架构的 Google API 的 API 级别 15 或 16。
在此处输入图像描述

另外请注意,列出了一个带有 arm 的 API 级别 17。我现在将尝试安装那个。

下载图片

可以看到下载成功,安装正常。现在,我单击 [Finish] 按钮。该项目不再出现在我的列表中。 物品不见了

自动选择 API 级别 15 项。我假设是因为最初是在我安装 Android Studio 时下载的。

最后,如果您取消选中 [ ] 显示可下载的系统图像复选框 - 这非常令人困惑 - 我假设显示您已经下载的那些,那么您会看到它只显示一个 API 级别 15虚拟设备。 只有一台设备

这都是相当可怕的。有没有人看到这个问题?有其他人能够修复它吗?

我假设我只需要去完全重新安装 Android Studio。

4

3 回答 3

1

编辑 2 最终解决方案

多亏了机敏的 SO post-er ( code-apprentice ),我才能找到解决方案。

这是我必须做的。

  1. 创建idea.properties 文件并将其放在\networkLocation\myUserName\.Android 1.5\
  2. 将两行放在其中,指向我的本地磁盘

idea.config.path=C:/Users/myUserName/.AndroidStudio1.5/config/idea.system.path=C:/Users/myUserName/.AndroidStudio1.5/system/

然后我再次启动 Android Studio 并尝试安装包含 Google API 的系统映像。它有效,并被添加到列表中: 系统映像

但是,它仍然没有显示我之前安装的其他 API 级别(15、16 等)。

从磁盘中删除它们

我注意到无论出于何种原因,它们都位于本地文件夹中:%userprofile%\Android\SDK\add-ons。我删除了该路径下的所有文件夹,带有 Google 选项的原始 API 再次出现在我的列表中。请参阅图像中突出显示的项目。

谷歌 api 级别 15

解决方案 现在,当我安装它们时,它们会显示在列表中,我可以根据它们创建新的 AVD。一切正常。

编辑 我使用我编写的工具来观察 Android Studio 写入磁盘的位置,我找到了一个揭示问题的路径:

仍然访问网络路径

尽管我已经进行了大量更改以确保安装将完全安装在我的本地磁盘上,但 Android Studio 仍将一些(大量)数据保存到此路径中。

我在 .AndroidStudio 1.5\config\ 上做了一个谷歌,这让我得到了以下文档: http ://tools.android.com/tech-docs/configuration

在那里,您将看到安装应该使用 %userprofile% 来确定它写入此数据的位置。我的 %userprofile% 指向我的本地磁盘 (c:\users\myUserName),但 Android Studio 仍然坚持将数据写入网络。

以下是重要信息: Windows:

%USERPROFILE%\.{FOLDER_NAME}\studio.exe.vmoptions 
 and/or 
%USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions
        %USERPROFILE%\.{FOLDER_NAME}\idea.properties

我删除了远程 .Android Studio 1.5 目录并将其复制到我的 %userprofile% (本地)目录。然后我重新启动了 Android Studio,它认为它需要再次生成所有这些,因为它想再次将它放在远程目录中。

核心问题

显然,它没有使用 %userprofile%


它变得更糟。我卸载了应用程序和所有设置(据说)。

卸载

然后我再次安装了整个东西,它看起来好像默认选择了正确的安装路径:

在此处输入图像描述

但是,当我重新启动 Studio 时,它会打开我在第一次安装时创建的项目。

另外,我仍然看不到我之前安装的 API 映像。只有那一张图。没有其他的。

这真的不是一个很好的安装系统。我正在写一本有助于开始 Android Devs 的书,但是如果他们陷入这个问题循环,就没有办法用一个好的运行模拟器让他们摆脱它。

非常不幸。

于 2016-02-08T16:53:25.580 回答
1

您应该查看idea.properties项目中的文件(不同目录的 Android Studio 路径)。这听起来像是设置为覆盖系统的设置。

于 2016-02-08T19:31:17.567 回答
0

Android SDK Manager上下载相应的SDK和。API levelsImage Systems

然后它们会正常显示在AVD上。

于 2016-05-05T17:43:58.247 回答