Почему Android-приложения не поддерживаются Linux для ПК?
Как широко известно, операционная система Android базируется на Linux (с добавлением поверх Android слоя Java). Почему в таком случае Linux для настольных компьютеров и ноутбуков обычно не поддерживает все то огромное многообразие Android-приложений, которое сегодня доступно? Почему поддержка этих приложений не стала стандартной опцией современных дистрибутивов Linux? Прежде всего, в основе Android лежит ядро Linux, а не операционная система целиком. Присутствует также BusyBox. Все остальные компоненты (GNU/X11/Apache/Linux/TeX/Perl/Python/FreeCiv) в Android не представлены. Android не эмулирует Linux по той же причине, по которой грузовой автомобиль не является самолетом, хотя и то и другое — транспортные средства и располагают колесами. Ранее предполагался перенос на компьютеры под управлением Linux «материального дизайна» (Material Design) операционной системы Android Lollipop.
Этот интересующий многих пользователей вопрос был рассмотрен ресурсом Unix & Linux Stack Exchange. Дело в том, что большинство Android-приложений разработаны таким образом, чтобы соответствовать ограничениям, накладываемым портативными девасами. Речь идет об ограниченных вычислительных ресурсах, необходимости экономить энергию, малых экранах и отсутствии дополнительного устройства ввода (клавиатуры, мыши или иного средства, при помощи которых пользователи ПК осуществляют ввод). Обычно для компьютеров присутствуют приложения с аналогичной функциональностью. Исключение составляют навигационные приложения, которые попросту бесполезны на стационарных девайсах и представляют интерес лишь на мобильных устройствах.
Вы можете запускать приложения через специальный эмулятор, предлагаемый компанией Google. Этот инструмент предназначен для разработчиков, поскольку им приходится запускать Android-приложения на ПК, чтобы протестировать их.
Это работает в комбинированных системах, таких как Ubuntu for Android. Она преимущественно ориентирована на устройства «среднего размера», то есть планшеты, но может и использоваться и на более миниатюрных смартфонах, позволяя пользователям запускать приложения, предназначенные для компьютеров. Необходимо отметить, что на рынке начинают появляться телефоны под управлением мобильной версии Ubuntu. Один из них — Meizu MX4 с Ubuntu вместо Android, который продается только по приглашениям.
Поскольку ядра Android Linux в основном совместимы, существует возможность совместной работы двух операционных систем. Это проще, чем переписывать библиотеки Android таким образом, чтобы они работали поверх Linux/X11 или, наоборот, переработать библиотеки Linux под Android. При этом существуют и значительные технические трудности. Основная из них состоит в том, что графический интерфейс пользователя (GUI) каждой из рассматриваемых операционных систем (Android и Linux) основан на существенно различающемся программном обеспечении. В Linux (как и в иных разновидностях Unix) применяется X Window System, в то время как у Android — собственное ПО.
На сегодняшний день, среди операционных систем для смартфонов и планшетов только два несомненных лидера — Android и iOS. Windows 10 может изменить это положение вещей, впрочем нет уверенности в том, что именно так и будет. Эта грядущая ОС позволит переносить на нее Android-приложения, хотя и с определенными техническими трудностями. В Microsoft ранее рассказали о сути поддержки Android-приложений очередной операционной системой компании. Ubuntu для телефонов, в свою очередь, входит в число «подрастающих плафторм», и на сегодняшний день трудно спрогнозировать ее перспективы. В любом случае говорить о ней как о конкуренте самой популярной мобильной ОС в мире пока не приходится.
Стала бы полезной возможность запускать Android-приложения на компьютерах под управлением операционных систем Linux?