ОШИБКА: двоичные файлы 32-битного эмулятора Android Android УСТАРЕЛИ при попытке запустить эмулятор Android

14

Я установил среду разработки Android в Ubuntu 10.10, 32 бит. После создания AVD при запуске эмулятора я получил следующую ошибку.

ОШИБКА: двоичные файлы 32-битного эмулятора Linux Android УСТАРЕЛИ, чтобы использовать их,
вам нужно выполнить хотя бы одно из следующих действий:
- Использовать опцию -force-32bit при вызове эмулятора.
- Установите для ANDROID_EMULATOR_FORCE_32BIT значение true в вашей среде.
Любой из них позволит вам использовать 32-разрядные двоичные файлы, но имейте в виду, что они исчезнут в будущем выпуске Android SDK.
Подумайте о переходе на 64-битную систему Linux, прежде чем это произойдет.

Используемая версия ADT - 23.0.3.1327240. Библиотеки SDK, которые я использую, являются 32-битными. пожалуйста, помогите мне. Благодарю.

Моханрадж Мани
источник
1
Обновление до новой версии переключиться на 64 бит.
Матео
4
Вы должны обновить до поддерживаемой версии Ubuntu. Обычно мы закрываем это как неподдерживаемое, но поскольку эта проблема на самом деле не относится к более старому выпуску, и я думаю, что другие люди могут столкнуться с этой проблемой в поддерживаемом выпуске, я оставлю ее. Но я настоятельно рекомендую вам обновить хотя бы до 12.04.
Сет
3
Я согласен: это в меньшинстве новых вопросов о проблеме в выпуске EoL, где (а) мы знаем, что ответ не зависит от релиза, и (б) и вопрос, и ответ (потому что они связаны с общим действием с неочевидные ловушки) кажется, что они могут быть особенно ценными для других. Это может быть отредактировано, чтобы распространить это на все выпуски, но мы должны держать это открытым. @MohanrajMani Но, пожалуйста, не продолжайте использовать 10.10. Он давно не поддерживается, и отчасти это означает, что он не обновляется для исправления недавно обнаруженных уязвимостей безопасности. Это рискованно в использовании.
Элия ​​Каган
1
Это не имеет ничего общего с Ubuntu 10.10, но, в частности, связано с попыткой использовать эмулятор Android в 32-битном дистрибутиве Linux, когда он был разработан для 64-битных систем. то же самое произойдет в Ubuntu 12.xx и 14.xx при использовании дистрибутива Intel 386. Кроме того, в последний раз я проверял, что вы не можете просто переключиться на 64 бит. 64-битная поддерживается только на AMD, 32-битная поддерживается только на Intel.
JSON
1
@JSON 64-разрядная версия Ubuntu работает как на 64-разрядных процессорах AMD, так и на 64-разрядных процессорах Intel. «Amd» в «amd64» не означает, что он предназначен только для AMD. Аналогично, 32-разрядная версия работает на обоих (32- и 64-разрядных) процессорах AMD и (32- и 64-разрядных) процессорах Intel - «i» в «i386» не означает, что она предназначена только для Intel , См. Совместима ли 64-разрядная версия Ubuntu только с процессорами AMD? и разница между загрузкой i386 и amd64? для деталей. (Я согласен, что этот вопрос не относится к 10.10 релизу Ubuntu.)
Элия ​​Каган

Ответы:

15

Вы получаете эту ошибку, потому что вы, очевидно, работаете в 32-битной системе, а эмулятор Android предназначен для наилучшей работы в 64-битной среде. Единственное реальное решение - установить 64-битную операционную систему.

Если ваше оборудование не поддерживает 64-битную версию или вы не можете переустановить ее прямо сейчас, вы можете временно обойти проблему, пропустив ее -force-32bitпри запуске эмулятора из командной строки или установив ANDROID_EMULATOR_FORCE_32BITзначение trueв вашей среде (как говорится в сообщении об ошибке). Вы можете сделать это, запустив:

gedit .profile  

Из терминала. Добавьте текст:

export ANDROID_EMULATOR_FORCE_32BIT=true  

до конца файла и сохраните и закройте его. Я не могу проверить это прямо сейчас, но вам нужно будет либо запустить source .profileиз терминала, либо перезапустить, чтобы изменения вступили в силу.

Попробуйте запустить эмулятор.

Настоятельно рекомендуется установить 64-разрядную операционную систему, чтобы продолжить разработку Android, поскольку Google в конечном итоге удалит 32-разрядные двоичные файлы, что приведет к прекращению работы вашего эмулятора. Сам Android также движется к архитектуре x64, поэтому, оставаясь с 32-битной версией, вы очень скоро останетесь позади.

Сет
источник
4

У меня есть одно отличное решение. Вы можете начать его с затмения или NetBeans. пытаться :

  1. В Eclipse щелкните папку проекта Android и выберите «Выполнить»> «Выполнить настройки» ...

  2. На левой панели диалогового окна «Выполнить конфигурации» выберите конфигурацию запуска проекта Android или создайте новую конфигурацию.

  3. Нажмите вкладку Target.

В поле Дополнительные параметры командной строки эмулятора введите:

-force-32bit

Запустите ваш проект Android, используя эту конфигурацию запуска.

В NetBeans вы: 1. Когда вы выбираете отладчик, выберите Настроить ...

  1. в опциях эмулятора пиши -force-32bit
  2. нажмите ок. и запустить приложение
Jakob
источник
1

Отредактируйте этот файл:

открыть терминал в убунту

gedit .bashrc

вставьте этот текст:

export ANDROID_EMULATOR_FORCE_32BIT=true

источник обновления:

source ~/.bashrc
ангел
источник
3
~/.bashrcвовсе не нужно быть отредактированы как корень, так что нет никаких причин , чтобы использовать sudoдля этого. (Кроме того, это разумный и полезный ответ, хотя я бы предложил ~/.profileвместо этого поместить эту переменную среды, как предлагает Сет, или, возможно, даже поместить назначение - т.е. без export--in `~ / .pam_environment.)
Элия ​​Каган
@EliahKagan В свете этого вопроса, может быть ~/.profile, не лучшее место в конце концов? Я несколько сбит с толку, потому что вики специально предложила поместить переменные окружения в ~/.profile..
Seth
1

создать скрипт оболочки:

#!/bin/bash
#
#   set export ANDROID_EMULATOR_FORCE_32BIT=true

export ANDROID_EMULATOR_FORCE_32BIT=true
/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse

Измените сценарий оболочки на исполняемый файл и запустите его, чтобы запустить eclipse

/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse путь к исполняемому файлу затмения

patrkw
источник
Это работает при использовании Titanium, но просто отредактируйте их файл SH. Так что это работает.
jfreak53
1

Я решил эту проблему, обновив конфигурацию эмулятора в Android-студии следующим образом.

  1. Перейти в меню «Выполнить» -> «Редактировать конфигурацию» в Android Studio
  2. Выберите название приложения под Android Application на левой панели
  3. Выберите вкладку Эмулятор на правой панели
  4. Отметьте «Дополнительные параметры командной строки:» и введите -force-32bit в текстовое поле рядом с ним.
  5. Выберите «ОК» и попробуйте снова запустить приложение.
Югендер М
источник