【问题标题】:New emulator in AVD manager gives "no longer exists as a device"AVD 管理器中的新模拟器给出“不再作为设备存在”
【发布时间】:2017-02-28 00:49:58
【问题描述】:

我一直在努力使用最新的 Android 构建工具中的 AVD 管理器创建新的模拟器。我可以使用它创建设备配置文件和模拟器,但它立即在 AVD 管理器中显示为损坏,并带有“修复设备”选项。

尝试修复设备或擦除数据无效。这发生在任何类型的新模拟器上,包括预设的设备配置文件。

确切的错误:

名称:Android_Wear_Round_API_23

CPU/ABI:Android Wear Intel Atom (x86)

路径:C:\Users\Developer.android\avd\Android_Wear_Round_API_23.avd

错误:用户 Android Wear Round 不再作为设备存在

我正在使用:

  • Android Studio 2.2.1
  • Android SDK 工具 25.2.2
  • Android SDK 平台工具 24.0.4

【问题讨论】:

    标签: android android-emulator avd


    【解决方案1】:

    当 AVD 管理器正在查找硬件配置文件但找不到它时,会出现此问题,即使它存在。我有一种感觉,这是由最新工具中的一个错误引起的,该错误导致硬件配置文件在没有正确 ID 的情况下被保存,因为前一段时间制作的配置文件仍然可以正常工作(直到您编辑它们)。以下为我修复了它:

    在您的用户配置文件文件夹中,在 ~/.android 文件夹中找到 devices.xml,因此在 Windows 上您将寻找 C:\Users\Me\.android\devices.xml

    打开文件并查找与错误消息中显示的名称相同的设备,在您的情况下为“Android Wear Round”。它看起来像这样:

        <d:device>
            <d:name>Android Wear Round</d:name>
            ...
    

    复制带有名称的行并将标签更改为d:id,但保留名称,如下所示:

        <d:device>
            <d:name>Android Wear Round</d:name>
            <d:id>Android Wear Round</d:id>
            ...
    

    返回 AVD 管理器并点击刷新;现在应该修复虚拟设备。

    【讨论】:

    • 哇,这就像魔术一样!你到底是怎么想出来的?!
    • 我一直在为同样的问题苦苦挣扎,直到我修改了现有的工作配置文件,但由于编辑而损坏。错误消息给了我一个意外的名称,类似于 wear_round,而不是配置文件的实际名称 (Android Wear Round)。 devices.xml 文件似乎是相关的,通过 Ctrl+F'ing 我发现所有工作设备都有一个 &lt;d:id&gt; 而损坏的设备没有。更具体地说,因为该文件包含 &lt;d:id&gt;wear_square&lt;/d:id&gt; 但不包含 &lt;d:id&gt;wear_round&lt;/d:id&gt;
    • 没用 :( 就上下文而言,这是在将 avd 移动到外部 hd 后发生的
    • 有趣的是,我的问题是 devices.xml 文件以某种方式被重命名为 devices.xml.old - 不是我自己
    • @kilkfoe 我遇到了同样的问题,你找到解决办法了吗?
    【解决方案2】:

    我的一些模拟器突然出现了这个问题(5/9 模拟器)。似乎那些有问题的模拟器是使用单独导入的自定义硬件配置文件创建的。并且由于某种原因,当我尝试使用这些硬件配置文件创建新模拟器时,导入的硬件配置文件不再可用。所以我重新导入了那些硬件配置文件,所有显示错误的模拟器开始照常工作。

    【讨论】:

      【解决方案3】:

      先决条件:将 ANDROID_HOME 设置为有效的 android sdk 可用的位置,如果在 Windows 上 C:\Users****\AppData\Local\Android\Sdk

      重新创建场景:在运行 %ANDROID_HOME%\tools\android.bat list avd 时,您应该观察“不再作为设备存在”或者这将列出有效设备。

      可能性一:c:\users\.android\devices.xml 中缺少 devices.xml 丢失,无效(无法解析)。这可以从 %ANDROID_HOME%\tools\lib\devices.xml 恢复

      可能性 2:devices.xml 上的设备名称和模拟器的 config.ini 中的设备名称。 打开 AVD 管理器,单击编辑并复制设备名称。 使用此名称更新已恢复的 devices.xml。

      确保 c:\users\.android\avd\.avd\ 下的 config.ini 有 与键的值相同的条目 hw.device.name

      【讨论】:

        猜你喜欢
        • 2019-02-19
        • 2021-07-29
        • 2012-11-22
        • 1970-01-01
        • 1970-01-01
        • 2017-05-21
        • 2012-12-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多