Чекаючи, поки цільовий пристрій вийде в мережу


94

Нещодавно я оновився до Android Studio 2.3, і тепер, коли я намагаюся запустити програму, емулятор не виходить з мережі. Час очікування закінчується через 300 секунд.

Крім того, у програмі трапилася ПОМИЛКА FATAL EXCEPTION (OOM), і я не знаю, як це виправити, або якщо це є частиною проблеми емулятора.

Будь-яка допомога дуже вдячна. Знову ж таки, мої знання в програмі дуже обмежені, тому, якщо ваша відповідь може бути простою, це було б чудово.


це відбувається у мене також після оновлення. adb постійно каже, що пристрій у режимі офлайн. я думаю, що це помилка студії. перехід на емулятор genymotion вирішує мої проблеми.
j2emanue

Відповіді:


37

У мене теж була та сама проблема, потім я пішов до менеджера AVD і клацнув правою кнопкою миші на емуляторі і зупинив його, і я ЗАПУСТИТИ додаток ще раз, і цього разу він запрацював. це може бути тимчасовим рішенням, але поки працює.

Менеджер AVD-> клацніть правою кнопкою миші на емуляторі, який ви використовуєте -> Зупинити

Тепер Runваша заявка знову.

Примітка: Іноді безпосереднє закриття емулятора не працює для вищезазначеної проблеми, але зупинка його від менеджера AVD, як згадано, працює.


Здається, що проблема з емулятором. Це спрацювало! Дякую!
MMurph23,

Не впевнений щодо Android Studio 2.3.1, але коли ця проблема вперше зіткнулася в 2.3.0, це рішення спрацювало. Я ніколи не стикався з такою ж проблемою в 2.3.1
WhiteShadow

Я думаю, що це може випадково спрацювати при фіксації перегонових умов, але справжнім 100% рішенням є MarkDubya нижче.
Sky Kelsey

У мене така сама проблема, і виконання цих кроків ще не допомогло її вирішити
Ватсал Десай,

10
Ця відповідь вказала мені в правильному напрямку, але що допомогло, було використання опції "Холодне завантаження" від AVD Manager.
lbarbosa

86

Далі працювали для мене в Android Studio 3.x.

Крок 1: Відкрийте AVD Manager.

введіть тут опис зображення

Крок 2: Клацніть правою кнопкою миші та витріть дані для віртуального пристрою, на якому ви тестуєте.

введіть тут опис зображення


1
Дякую, нарешті вдалося. Можливо, деякі файли, які не належним чином оновлювались на емуляторі.
Sauleil

2
Працював у мене з AS 2.3.3 та Nexus 5X
Павло,

2
Дякую приятелю :) Працює як шарм. Хто-небудь повідомляв про це розробників Google?
Шашанк Капсіме

У підсумку я створив новий емулятор (у будь-якому випадку необхідний для розміру екрана) і видалив старий. Це теж виправило.
приголомшений

Працював у мене в Android Studio 3.5.3
jaytibann,

48

Якщо ви працюєте на Mac, переконайтеся, що ви вийшли з Docker для Mac. Це спрацювало для мене.


4
Геній !! економить багато часу ... слава!
Абдулла Мд. Зубайр,

3
Що таке Docker для Mac?
user3862830

1
завжди докер! ~
neobie

6
Хтось може пояснити, як вийти з Docker для Mac?
TJ1,

1
Чому в цьому випадку Docker викликає проблеми з емулятором? Це працює для мене, але я хочу знати, чому Docker конфліктує з емулятором?
TheLearner

24

Три дні після цього, і я вважаю, що між adb та емулятором існує перегоновий стан. На запит на запуск програми, коли емулятор вже не запущений, ви бачите "Ініціалізація ADB", потім вибір емулятора, він запускається, і ви отримуєте "Очікування на вихід цілі в мережу". Сервер adb kill, або kill -9, або "Завершити процес" adb з диспетчером завдань призведе до того, що adb загине, перезапуститься, ваш APK встановиться, і ви готові до роботи. Мені здається забавним, що "сервер adb kill-серверів" змушує adb вмирати, а потім перезапускатися тут, але, можливо, це ще одна загадка.


1
Дякуємо, що відстежили це. Це абсолютно спрацювало для мене з Android Studio 2.3.1
Sky Kelsey

2.3.1 у Windows 10, вбиваючи процес adb.exe, щоб він перезапустився, здається, вирішує проблему і для мене. Дякую!
sillv0r

Це має бути відповіддю. Обрана відповідь для мене не спрацювала, але це відбувається кожного разу. Дякую!
HondaGuy

1
У терміналі введіть: cd, щоб змінити каталог на: android> sdk> platform-tools. Потім введіть: 'adb kill-server'. а потім: 'adb start-server'
Halfacht

3
У AS v 2.3.3 це запропоноване рішення не спрацювало. Я побіг adb kill-serverз терміналу. waiting for target device...Повідомлення не був зупинений , а сервер не був перезапущений. Я все ще не маю рішення.
Mike S.

16
  1. Інший випадок - Android Emulator слід перевстановити . Це може статися, коли ви встановлюєте вищу версію Android Studio, потім оновлюєте для неї SDK і повертаєтеся до попередньої.

    Інструменти - Android - Менеджер SDK - Інструменти SDK - Емулятор Android - зніміть прапорець, застосуйте, поставте галочку, застосуйте

  2. Вимкніть програму Docker , якщо вона у вас є (для користувачів Mac).

  3. Перезапустіть емулятор :

    Інструменти - Android - Менеджер AVD (або вбити процес adb в диспетчері завдань).


1
Емулятор навіть не був встановлений у моєму випадку.
mythicalcoder

1
Приємно, цей мені допоміг!
peterkodermac

1
Я спробував і цей варіант, проте проблема все ще є.
Vatsal Desai,

У моєму випадку платформа Android SDK була встановлена ​​лише частково.
fhery021

15

Після спроби всіх цих рішень без успіху той, хто вирішив мою проблему, просто змінив графічну конфігурацію віртуального пристрою з Авто на Програмне (спробував спочатку апаратне забезпечення без успіху)


Де знаходиться графічна конфігурація цього віртуального пристрою?
stramin

1
@stramin Перейдіть до диспетчера віртуальних пристроїв Android (з меню «Інструменти»), натисніть «Редагувати» (піктограма пера) на віртуальній машині, знайдіть там опцію «Графіка». :)
Філіп Савіч

13

Перейдіть до AVD Manager у вашому Android Studio. Клацніть правою кнопкою миші на емуляторі , а потім виберіть стерти дані. Потім запустіть програму ще раз . Емулятор виконає чисте завантаження, а потім встановить ваш apk, тоді ваш додаток нарешті запуститься.

Короткий зміст : Менеджер AVD --- Емулятор правою кнопкою миші ---- Видалення даних ---- Запуск програми ще раз

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


7

Нижче описані кроки працюють для мене

  1. Закрийте запущений емулятор
  2. Перейдіть до AVD Manager
  3. Виберіть доступний емулятор
  4. На цій вкладці дій (остання) клацніть на стрілку спадного меню та виберіть ХОЛОДНУ ЗАПУСКУ ЗАРАЗ
  5. Нарешті запустіть свою програму

Холодного черевика мені вистачило.
PJ_Finnegan

5

Здається, Android Studio (з використанням версії 3.5.1) через деякий час переходить у дивний стан. Це спрацювало для мене.

Файл -> Недійсні кеші / перезапуск -> Недійсні та перезапустіть


4

Це рішення працює для мене: Інструменти -> Менеджер AVD -> натисніть стрілку спадного меню -> виберіть Cold Boot Now

введіть тут опис зображення

введіть тут опис зображення


3

Здається, що в моєму випадку проблема полягала в тому, що "Google APIs ARM EABI v7a System Image" не встановлювався автоматично під час встановлення Android Studio.

Після встановлення образу емулятор почав працювати.

Знімок екрана менеджера SDK


Ласкаво просимо до SO! Будь ласка, прочитайте цей спосіб відповіді .
thewaywewere

2

Спробувавши майже всі перераховані вище рішення, для мене нарешті вдалося створити новий віртуальний пристрій із використанням зображення "Google APIs" замість "Google Play".


1

Я виявив, що наявність запущеного екземпляра Docker на моїй машині (OSX) перешкоджає запуску емулятора Android (див. Android Studio Неможливо запустити AVD )

Раніше мій емулятор міг запускатися, а потім виходив з ладу до того, як було показано будь-яке вікно пристрою.

Мені також довелося використовувати 'kill -9' (згідно @MarkDubya), щоб змусити Android Studio підключитися до віртуального пристрою.


1

Як і відповідь urupvog , переконайтеся, що ви не працюєте з іншими віртуальними машинами, такими як VirtualBox . Коли я перезавантажив свій комп’ютер, AVD працював доти, поки я не запустив Vagrant для внутрішньої розробки (тоді він не запускався).

Див. Розділ Емулятор Android і віртуальний ящик не може працювати одночасно для отримання додаткової інформації.


1

Переконайтеся, що у вас не встановлені несанкціоновані, несанкціоновані пристрої відповідають на ту саму помилку в Android Studio, перевірте, коли емулятор увімкнено за допомогою команди adb.

$ adb пристроїв

Список пристроїв, що додаються

емулятор-5554 несанкціонований

Якщо у вас є такий спосіб емулятора, Android Studio чекає авторизації, і, можливо, це може вирішити проблему.

Уповноважені пристрої

Це помилка, яку я вирішив у Windows 10 за допомогою Android Studio 2.3.3


Будь ласка, прочитайте Як написати хорошу відповідь ? Ур просто посилається на інше питання.
Саураб Бхандарі

1

Не прочитав усіх відповідей. У будь-якому випадку Прийнятий мені не працював. Що було зроблено, це оновлення студії Android до останньої стабільної версії, а потім створення нового віртуального пристрою. Я думаю, мій віртуальний пристрій nexus 5p вийшов з синхронізації із середовищем студії Android.


0

У мене була та ж проблема, що і у вас, андроїд-студія сказала, що у мене вже встановлений Емулятор 25.3.1

Я видалив папку емулятора (вона знаходиться всередині папки SDK)

А потім переінсталював менеджер Sdk Emulator 25.3.1 -> SDKtools -> встановити емулятор 25.3.1

Цього разу це вдалося :)


0

Питання занадто старе, але може бути корисним комусь у майбутньому. Після пошуку багатьох речей, більшість з них не працюють для мене. ТАК, на мою спробу Це рішення для мене працює. Коротше кажучи, видаліть та встановіть "Android SDK Tools" у Android SDK.

Нижче наведено кілька кроків для цього: -

  1. перейдіть до "Менеджера SDK" в Android Studio
  2. перейдіть на вкладку "Інструменти SDK"
  3. Видаліть "Інструменти SDK для Android" (означає видалити прапорець (зняти прапорець) перед "Інструменти для SDK для Android" і застосувати, потім ОК)
  4. Закрийте та перезапустіть Android Studio
  5. Встановіть "Інструменти SDK для Android" (означає позначку перед "Інструменти для SDK для Android" і Застосуйте, потім ОК)

Зображення видалення та встановлення Android SDK Tools заново


це питання ні старе, ні ваша відповідь не вирішує проблему для мене ^^ Я видалив цілу Android Studio, усі інструменти та інше, SDK, перевстановив ... не змінюється.
creativecreatorormaybenot

@creativecreatorormaybenot Тоді у вас можуть бути проблеми з virtualbox (означає віртуальну машину). Знайдіть рішення для цього. Удачі!! Все одно спасибі ..
Нітін Патель

0

Проблема полягає в тому, що між ide та емулятором не існує зв’язку.

У нашому випадку - ми знизили версію андроїда для програми, що розчарувало ідею в емуляторі.

Якщо ми встановимо Android 25 і прив’яжемо до нього проект, а також пристрій AVD на Android 25 - він пов’язує та застосовує зміни на льоту. Якщо ми перейдемо до версії Android 14 та пристрою на android 14 - це не так.

Використовується Android Studio 2.3.

Для гри з версіями, які ви можете встановити у сценаріях Gradle - build.gradle (модуль: додаток):

android {
  compileSdkVersion 25
  defaultConfig {
    minSdkVersion 15
    targetSdkVersion 15
  }
}

Як результат, додаток не працюватиме на пристрої Android 25 із повідомленням:

Помилка встановлення із повідомленням Не вдалося завершити сеанс: -26: Пакет ru.asv.test новий цільовий SDK 15 не підтримує дозволи на виконання, але старий цільовий SDK 25 підтримує .. Можливо, ця проблема вирішена видаленням існуючої версії apk, якщо він є, а потім перевстановіть.

ПОПЕРЕДЖЕННЯ. Видалення видалить дані програми!


0

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

Наступні кроки:

  1. На екрані «Ваші віртуальні пристрої» виберіть пристрій, який ви щойно створили, і натисніть «Запустити цей AVD» в емуляторі
  2. Після завантаження емулятора клацніть модуль програми у вікні Проект, а потім виберіть Виконати → Виконати
  3. У вікні Вибір цілі розгортання виберіть емулятор і натисніть кнопку ОК.

0

Для користувачів Linux, які використовують KVM і стикаються з цією проблемою, спробуйте встановити параметр Графіка на віртуальному пристрої Android Softwareзамість Automaticабо Hardware. Як вже зазначалось у цій відповіді .

Я можу підтвердити, що метод працює для Arch Linux, Ubuntu 16.04, а також вікон із власною графічною картою або без неї за допомогою Android Studio версії 2.3.1+


Дякую. це працює для мене. got працює, встановивши hw.gpu.mode = host у файлі config.ini
vsapiha

0

Я працюю над ноутбуком, Windows 8. Я вирішив цю проблему, змінивши режим із режиму економії заряду на збалансований. До цього емулятор не працював, і я бачу "Цільовий пристрій для виходу в Інтернет". Також не працював Genymotion


Привіт, Delphian може згадати, де я можу змінити режим економії заряду на збалансований режим
fazil

На вашому ноутбуці в правому нижньому куті є значок батареї, вам потрібно клацнути на ньому і перевірити, який у вас режим енергозбереження.
Дельфійський

0

У мене була подібна проблема при оновленні моєї андроїд-студії. Якось це змінило мій шлях до SDK. Я просто змінив його на мій оновлений шлях SDK, і він спрацював.

Android Studio -> Файл -> Налаштування -> Зовнішній вигляд та поведінка -> Налаштування системи -> Android SDK

Тут ви знайдете розташування SDK для Android, просто натисніть посилання редагувати перед цим, перегляньте та виберіть Android SDK у браузері файлів. Виберіть і натисніть Застосувати.

Виберіть менеджер AVD і запустіть емулятор. Це рішення спрацювало для мене.


0

Перейдіть до терміналу та введіть android avd. Виберіть свій AVD і виберіть "Редагувати". Переконайтесь, що ви не бачите No CPU/ABI system image available for this target- він відображатиметься червоним шрифтом внизу. Змініть на targetдоступний або завантажте зображення ABI. Іноді, якщо ви створюєте AVD зсередини Android Studio, це не відповідає цій вимозі.

Помилка AVD


0

Жодне з наведених вище рішень не працювало для мене, тому мені довелося стерти вміст

C:\Users\your_name\.android\avd

і заново створіть емульований пристрій



0

Нарешті, я вирішую цю проблему, встановивши правильний шлях експорту у файл bash:

export ANDROID_HOME=/Users/[username]/Library/Android/sdk

0

Виправити цю проблему просто:

  • Перейдіть до Інструменти SDK> Інструменти SDK
  • Перевірте емулятор Android і натисніть кнопку Застосувати

і іноді ви можете побачити, що поряд з ним доступне оновлення, вам просто потрібно дати йому закінчити оновлення


0

Я мав цю проблему двічі і спробував все в цій темі без результатів, нарешті, я виправив це, закривши емулятор "BlueStacks".

Якщо BlueStacks (і, можливо, інші емулятори Android) працюють під час запуску програми, за замовчуванням Android Studio встановлює там програму, навіть коли я ніколи не вибирав її як пристрій в AVD Manager, тоді Android Studio чекає, коли з’явиться неправильний пристрій онлайн ".

введіть тут опис зображення

Закриття BlueStacks (або будь-якого іншого емулятора Android) вирішило конфлікт між пристроями для мене.

Сподіваюся, ця інформація комусь допоможе!


0

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

Не знаю, чому я виправив ту саму проблему, що трапилася на моєму Macbook, однак, вибрати Nexus 5X API R би якось спрацював. АБО нижче

  1. Видаліть дані: Інструменти-> Відкрийте AVD Manager і натисніть ▼ ему "Видалити дані"

  2. Cold Boots Now: Інструменти-> Відкрийте AVD Manager і клацніть ▼ emu "Cold Boots Now"

  3. Видаліть і перевстановіть Android-емулятор з SDK: Інструменти-> Відкрити менеджер SDK-> Android SDK (меню ліворуч) -> Інструменти SDK (посередині на головному екрані), потім натисніть «Емулятор Android» та ЗАСТОСУВАТИ, потім знову натисніть «Android Емулятор "застосовується для перевстановлення, тому закінчіть

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