Неможливо видалити віртуальний пристрій із Eclipse, android


141

У мене кілька віртуальних пристроїв, деякі з них неможливо видалити.

Повідомлення про помилку є

На даний момент віртуальний пристрій Android Android працює в емуляторі і його неможливо видалити

коли я тільки перезапустив Ubuntu і тільки запустив Eclipse.


1
Як ви намагаєтесь видалити ??
EnthuDeveloper

Я можу зручно видаляти та додавати з Eclipse. Дайте мені знати, як ви намагаєтесь видалити його.
EnthuDeveloper

Якщо емулятор працює та якщо ви намагаєтесь видалити поточно запущений емулятор, він не буде видалений. Перш ніж видалити віртуальний пристрій, закрийте весь запущений емулятор
Karthi

2
Емулятор не працює, як я вже згадував, принаймні я його не запускав. Я намагаюся видалити його з Eclipse AVD Manager! Це платформа 4.0. Я спеціально перезапустив Ubuntu, щоб знищити всі процеси, тому що не знайшов жодного .. Здається, це лише проблема платформи Android 4.0.
сталося

Наразі той самий випуск для Android Studio.
Івано

Відповіді:


290

У Linux / * nix та OSX:

  1. Знайдіть папку .android у своєму $HOMEкаталозі.
  2. У .android має бути папка avd
  3. У папці avd має бути один або декілька .ini- файлів та відповідна папка віртуального пристрою * .avd .
  4. Видаліть і .ini файл, і.avd папку, від якої ви хочете позбутися.
  5. Поверніться до Android sdk та AVD-менеджера.

Я сподіваюся, що це допомагає ...


40
Так само працює і для OSX. У терміналі Перейдіть до ~ / .android / avd /, а потім видаліть файли <avd name> .ini та <avd name> .avd. Коли ви оновите список у вікні віртуальних пристроїв Android, ADV не буде.
ДжозефЛ

3
і я думаю, що він також працює для Windows. Здогадайтесь, структура SDK для android скрізь однакова :) просто питання про шляхи.
нуала

Дякую ДжозефЛ. Поясніть, будь ласка, шлях, який він показує, якщо ми двічі клацнемо наш .avd, який я створив, можна переходити лише через термінал. Але якщо я спробую перейти через Finder -> / Users / home / I cananot see /.android/avd. чому так ?
травня

Якщо ви заглянете в каталог ~ / .android / avd / <avd-name> .avd, ви побачите кілька файлів із розширенням .lock. Ви можете їх видалити, і тоді ви зможете скористатися програмою менеджера віртуальних пристроїв.
BJV

Якщо ви намагаєтесь повернутися до управління AVD, ви отримаєте помилку про те, що щось на зразок місця розташування SDK не встановлено, дайте час робочій області завантажуватися. Я дотримувався вищезазначеного і отримав це повідомлення.
Минув

25

У папці /home/.android/ evidenceyour device] .avd іноді залишаються позаду * .lock файли. Це може бути через несподіване завершення емулятора. AVDM цим не займається. Видалення папки пристрою вручну або його перестановка вирішує проблему.

Перш ніж спробувати видалити віртуальний пристрій в AVDM. Видаліть усі файли * .lock із відповідного /home/.android/ngedyour пристрою] .avd кормів. Потім ви зможете видалити без спливаючого вікна "Пристрій XXX наразі працює".


Первісна причина, чому я намагався видалити, - це те, що я не зміг її запустити, з дуже неясною помилкою. Отже, для мене це найкраща відповідь.
shalafi

19

Альтернативне і набагато простіше рішення, яке працює від менеджера AVD.

У диспетчері AVD натисніть кнопку Створити. Встановіть ім'я як ім’я пристрою, який ви не можете закрити, виберіть будь-які налаштування та поставте прапорець у полі Надпис існуючого AVD тим самим іменем.

Це вб'є старе і замінить нове. Новий не працює, тому його можна видалити.


6

Я шукав код Java, і ця помилка насправді означає, що у вас працює AVD ... Ви спробували kill'em все з верхом або htop (що набагато краще).

    // check if the AVD is running
    if (avdInfo.isRunning()) {
        display.asyncExec(new Runnable() {
            public void run() {
                Shell shell = display.getActiveShell();
                MessageDialog.openError(shell,
                        "Delete Android Virtual Device",
                        String.format(
                                "The Android Virtual Device '%1$s' is currently running in an emulator and cannot be deleted.",
                                avdInfo.getName()));
            }
        });
        return;

за допомогою htop ви можете шукати за допомогою f3 пошуку щось на кшталт емулятора :)
Quentin DOMMERC

Ще цікавішим фрагментом коду буде той, що показує, як avdInfo.isRunning()прийнято рішення. (Мабуть, видно, що папка avd сканується на файли * .lock.)
Risadinha

1

Від Finder (OSX) АБО Провідник каталогів (Linux та Windows)

  1. Знайдіть папку .android [Прихована папка] у вашому каталозі $ HOME. Показати / приховати папки на MAC
  2. У .android має бути папка [Your Device] .avd
  3. Знайдіть * .lock файли та видаліть всередині папки [Your Device] .avd

З Android Studio

  1. Відкрийте AVD Manager
  2. Виберіть віртуальний пристрій, який потрібно видалити
  3. Клацніть стрілку вниз в кінці і виберіть [Показати на диску], щоб відкрити каталог
  4. Знайдіть * .lock файли та видаліть всередині папки [Your Device] .avd

Після цих кроків це дозволить видалити з AVD Manager


0

У мене була ця проблема також .. не вдалося знайти / побачити папку .android у $ home. Я не знаю, приховано це чи що. Якщо двічі клацнути на пристрої Android в диспетчері AVD, він покаже вам шлях "запущеного avd", саме там, де всі кажуть, що це має бути. Оскільки я не міг видалити ці файли за допомогою GUI, я використав CLI (термінал для цього). Ви можете використовувати наступні команди [cd] для зміни каталогу [rm -R] для видалення файлу. Крок за кроком:

  1. з терміналу cli, який буде виглядати приблизно так:

    nameOfYourMac: ~ MacUser $

  2. тип

    cd .android / avd

    (зміни в каталозі)

    nameOfYourMac: avd MacUser $

  3. Тип

    rm -R назваOfYourVirtualDevice.avd

Досить легко. Тепер ви зможете видалити пристрій у AVD Manager Eclipses.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.