@sanek2005

Почему эмуляторы андроида основаны на виртуальных машинах?

Неужели это - единственный способ запуска андроид приложений на пк? Я просто читал, что большинство эмуляторов (bluestak, например) основаны на virtualbox. Этож целый андроид работает, получается. Неужели нельзя просто dex код, например, в в обычный байткод jvm транслировать?
  • Вопрос задан
  • 111 просмотров
Пригласить эксперта
Ответы на вопрос 2
samodum
@samodum
Какой вопрос - такой и ответ
в обычный байткод jvm транслировать

А теперь идите и почитайте, что такое JVM - Java Virtual Machine.
Хотите от виртуальной машины перейти к JVM?

UPD
Андроид - это операционная система. Со своей структурой, схемой работы с памятью и прочими сервисами...
Вот ты хочешь запустить андроид-приложение на ПК с ДРУГОЙ операционной системой. Ок, допустим. Приложение начинает запрашивать доступ к камере, адресной книге, местоположению и при этом хочет работать в фоновом режиме. При этом скачивает какие-то файлы из интернета и сохраняет их на SD-карте.
Как ты будешь принимать пуши от Firebase?
Как ты предлагаешь решить эту задачу без виртуальной машины?
Ответ написан
@rPman
Что значит почему? Потому что windows из сакс?

На linux можно запустить с помощью lxc контейнера, например (lxc это нативное исполнение кода с разграничением прав через cgroups, этакий chroot на стероидах)

p.s. использовать WSL и LXC в теории может позволить провернуть подобный финт и на windows, но графического режима туда не завезли, т.е. смысла в этом нет
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы