Неможливо видалити віртуальний пристрій із 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.