Емулятор Android SDK зависає на Mac під керуванням OS X 10.6 Snow Leopard


5

У мене виникають проблеми з запуском Android SDK на обох моїх комп'ютерах Mac з ОС X 10.6.2 Snow Leopard. Це, здається, 64-розрядний чи 32-розрядний випуск, оскільки Snow Leopard тепер налаштований на 64-бітне все, включаючи віртуальну машину Java.

я знайшов цієї веб-сторінки з інструкціями про те, як запустити інструменти Android у 32-розрядній Java VM, і тепер я можу запустити інструмент графічного інтерфейсу Android для завантаження файлів SDK, створення AVM і т.д. Однак, коли я спробую Здравствуйте, світ і дістатися до того моменту, коли я запускаю свою програму під емулятором Android, все йде на південь.

Схоже, що емулятор починає роботу, але він зависає (обертається курсором із «пляжного» смерті), не показуючи нічого. (Це тільки зависає емулятор; решта системи все ще працює нормально.) Якщо я дотримуюсь тих самих кроків (за винятком 32-розрядного Java hack) у віртуальній машині Windows, все працює нормально.

Це відбувається як на моїй базі Mac Pro, так і на 13-дюймовому MacBook Pro.

Відповіді:


4

Я копав в інший день і побачив це повідомлення на терміналі: емулятор: попередження: відкриття аудіовходу не вдалося Я бачив це повідомлення багато разів раніше, і я завжди припускав, що це було тому, що емулятор не підтримував звук або щось таке. Але я вирішив спробувати експеримент, який той день. Виявляється, емулятор має опцію командного рядка "-noaudio", і коли я запустив його з цим, він спрацював !! Так що тепер я просто запускаю емулятор з опцією -noaudio завжди, без зависань. Ні звукової підтримки, але принаймні я можу запустити емулятор зараз.

Тепер це працює, якщо я вручну викликаю емулятор з командного рядка. Що про те, що плагін Eclipse ADT називає його? Ну, я відчував себе досить ледачим у цей момент і не хотів копатися в плагіні ADT, щоб побачити, чи є він "додати ці прапорці командного рядка, коли запускається емулятор", тому я зробив невеликий "обгортковий" скрипт для команди емулятора, яка завжди додає опцію -noaudio. Це трохи kludge, але це працює. Ось як: (примітка: $ представляє підказку оболонки, не вписуйте її самостійно)

$ cd <WHERE YOU INSTALLED THE ANDROID SDK>/tools
$ mv emulator emulator.real
$ cat > emulator << EOF
#!/bin/sh
exec <WHERE YOU INSTALLED THE ANDROID SDK>/tools/emulator.real -noaudio $*
EOF

2

Всі наведені вище поради обов'язково працюють. Рішення проблеми замерзання - просто пройти -noaudio прапорець опції при запуску емулятора.

Для подальшого прискорення запуску емулятора можна додати два інших прапорця / опції -cpu-delay і -no-boot-anim наступним чином:

$ emulator -cpu-delay 0 -no-boot-anim -no-audio -avd <avd name>

де -no-audio фактично виправляє проблему заморожування. -no-boot-anim вимикає анімацію завантаження і <avd name> слід замінити на ім'я avd-зображення, яке потрібно виконати


1

У мене була така ж проблема, і вона була виправлена ​​просто відключенням USB гарнітури, яка була прикріплена під час виконання емулятора


Я мав цю проблему зі стереогарнітурою Bluetooth. При відключенні виправлена ​​проблема.
Sam

1

Відповідь Дональд Берр дав на 31 грудня 2009 року в 19:57 ще застосовується навіть з поточною SDK і ланцюжком інструментів.

Але вам не потрібний скрипт оболонки, якщо ви використовуєте Eclipse. Ви можете просто передати параметр командного рядка -noaudio у відповідній конфігурації запуску програми (на вкладці "Цільова" у полі "Додаткові параметри командного рядка емулятора").

Забув додати: я використовую MacBook і оснащений 24-дюймовим дисплеєм LED Cinema, який підключений також за допомогою USB і забезпечує звукову динаміку. Тому я думаю, що згадана помилка звукового пристрою USB все ще знаходиться десь усередині всього пакета Android SDK.


1

У мене була така ж проблема на OS X 10.8.4 на MacBook Air. Я врешті-решт з'ясував, що проблема була тільки викликана відновленням AVD. Моє обхідне рішення на даний момент полягає у визначенні нового AVD кожного разу, коли я перезапускаю емулятор.


0

я запускаю 10.6.2, android 2.0.1, eclipse 3.5 без проблем, тому повинен бути щось на вашому кінці. Я повернувся б до замовчуванням OS X налаштування і перевстановити SDK. потім спробуйте запустити емулятор тільки з командного рядка і подивіться, якщо це працює ...

mac:~ > java -version
java version "1.6.0_17"
Java(TM) SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01-101, mixed mode)

mac:~ > uname -a
Darwin veritas 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386

Дякуємо за пораду. Я копав в інший день і побачив це повідомлення на терміналі: емулятор: попередження: відкриття аудіовходу не вдалося Я бачив це повідомлення багато разів раніше, і я завжди припускав, що це тому, що емулятор не підтримував звук щось таке. Але я вирішив спробувати експеримент, який той день. Виявляється, емулятор має опцію командного рядка "-noaudio", і коли я запустив його з цим, він спрацював !! Так що тепер я просто запускаю емулятор з опцією -noaudio завжди, без зависань. Ні звукової підтримки, але принаймні я можу запустити емулятор зараз.
Donald Burr
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.