Статьи

Запуск Android програм в Linux.

  1. Установка Архона.
  2. Установка Android програм в Linux без проблем.
  3. Установка Android програм в Linux через / dev / ass.
  4. Твіки.

Google дав для свого дітища ChromeOS, який по суті своїй linux, можливість запускати Android програми. За іронією долі, Android - це те ж linux з Java машиною ART в нових версіях і Dalvik в старих. Тепер в Linux ми мучимося з запуском програм, написаних для дещо інший linux системи на кроссплатформенную мовою Java. Технологія називається A pp R untime for C hrome або коротко ARC, яку розробили Кен Мікстер (Ken Mixter) і Джош Вудвард (Josh Woodward).

Перші релізи ARC, яка ще робить свої перші кроки, йшли з обмеженнями типу: працювало кілька додатків і тільки в ChromeOS. Розробник НЕ з Google на ім'я Влад Філіппов ака vladikoff усунув обмеження і представив свою версію ARC під назвою ARChon. Нам знадобиться браузер Google Chrome старше 37 версії і все що ми будемо робити - це використовувати API розширень Chrome. Гуглівський ARC - це розширення. ARChon - розширення. Всі програми android, що ви встановите - це розширення.

Якщо ви будете використовувати ARChon, то ви заміните Google ARC, але не видалите його. Так що процедура безболісна і безпечна.

Установка Архона.

Припускаю, що з установкою Google Chrome ви вже впоралися. Залишилося зайти на ARChon Custom Runtime Guide і завантажити потрібної архітектури ARChon. Завантаживши архів, розпакуйте його.

І тут зупиніться. Хвилинка історії! Починаючи Chrome 35 для ОС MS Windows, Google вирішив заборонити установку нових і роботу раніше встановлених розширень, розміщених НЕ в магазині Chrome WebStore. Потім була повна заборона сторонніх розширень в травні 2014 року. Тепер щоб встановити додаткове розширення навіть якщо ви йому довіряєте, потрібно провернути нескладний фінт вухами.

Нам потрібно в Терміналі запустити Google Chrome ось так: google-chrome --enable-easy-off-store-extension-install

Тепер через Інструменти -> Розширення можна додати скачаний і розпакований Архон. Поставте галочку "Режим розробника" і натисніть "Завантажити розпаковане розширення". Вкажіть на розпакований каталог Архона, ігноруючи попередження.

Установка Android програм в Linux без проблем.

Спільнота підготувало великий список програм, із зазначенням статусу працездатності та URL. вам залишилося відвідати онлайн електронну таблицю Chrome APK Official Apps List . Я ніколи не кидав свиней в птахів і вирішив, що саме час перевірити можливість роботи андроїд програм в Лінуксі на прикладі саме цієї іграшки Angry Birds. Скачав, розпакував, додав як розширення і запустив.

Установка Android програм в Linux через / dev / ass.

Як бути якщо на руках є лише пакет з андроїд програмою в форматі apk? Спочатку перевірте в Chrome APK Official Apps List щоб дана програма не була в червоному кольорі статусу Crash або Unusable. Я наївно вважав, що впораюся з іграшкою Plants vs Zombies v1.2, але вона обламала мені роги. І тут я згадав, що є активним гравцем в World of Tanks і є програма-помічник World of Tanks Assistant. Завантажити apk з Google Play мені допоміг сайт apk-dl.com, видавши пряме посилання на потрібне.

Тепер нам потрібен інструмент chromeos-apk, який дозволяє конвертувати пакет apk в легкотравне розширення:

  • Ставимо Node Package Manager: sudo apt-get install npm
  • качаємо node.js . Щоб не морочитися з кодами і НЕ компілювати будь-якої софт в Убунту з пакетним менеджментом , Вибираю Linux Binaries (.tar.gz). Розпаковую архів і запам'ятовую шлях до нього. Бінарник node виявився у мене в / home / vasilisc / temp / node / bin /
  • Оновлюю до останньої версії chromeos-apk sudo npm install -g chromeos-apk @ latest
  • Переходжу в каталог з файлом ru.worldoftanks.mobile_1.8.2.apk і конвертує, підказуючи де взяти бінарник node:
    PATH = $ PATH: / home / vasilisc / temp / node / bin chromeos-apk ru.worldoftanks.mobile_1.8.2.apk
    Повинно бути видано подібне:
    Directory "ru.worldoftanks.mobile.android" created. Copy that directory onto your Chromebook and use "Load unpacked extension" to load the application.
  • Установка WoT Assistant у вигляді розширення через Інструменти -> Розширення закінчилося невдачею, як до цього і Plants vs Zombies. Справа в тому, що потрібно з файлу ru.worldoftanks.mobile.android/manifest.json взяти рядок "name": "ru.worldoftanks.mobile" і, перетворивши її в "message": "ru.worldoftanks.mobile", додати в файл ru.worldoftanks.mobile.android/_locales/en/messages.json в розділ extName
    "ExtName": {
    "Description": "Extension name",
    "Message": "ru.worldoftanks.mobile"
    }
    Тепер установка програми у вигляді розширення повинна закінчитися успішно. Це допомогло WoT Assistant, але не допомогло Plants vs Zombies, який встановився, але продовжував краш.
  • Можете закріпити android програми в Unity Launcher, щоб в подальшому швидко викликати програму. Адже ніхто візуально навіть не здогадається, як це запущено і як це працює. Головне працює!

Твіки.

Програми в світі Android звикли працювати на мобільні пристрої: смартфонах і планшетах. Вікно програми вписується в невидиме пристрій і, якщо вам хочеться зробити resize, щоб було побільше, то це цілком можна зробити. У папці, яка містить розпакований Archon є 2 файли gen_main.min.js і gen_index.min.js
Знайдіть в них tablet: { "long": 1280, "short": 800} і підправте під свої потреби.

Більш дієво буде додати "resize": "scale" в розділ arc_metadata в файлі manifest.json у самого додатка. Після всіх маніпуляцій не забудьте Перезавантажити (Ctrl + R) розширення.

Якщо у додатки немає свого значка, то на панелі Unity Launcher буде дефолтний значок зеленого робота. Найпростіший спосіб змінити значок - це будь-який вподобаний значок покласти в розпаковану папку програми, затерев там icon.png. Решта відбудеться без вас автоматично.

Ось в принципі і все! Якщо вам чогось не вистачало зі світу Android і ви пристрасно хотіли це запустити в своїй Linux системі, то тепер є реальний шанс зробити це.

Додаткові матеріали:
Проект по запуску Android додатків в Ubuntu.
Андроїд програми в Ubuntu через AVD.
LXC 1.0: Більш поглиблене використання контейнера. Установка Android в контейнер LXC.

Як бути якщо на руках є лише пакет з андроїд програмою в форматі apk?

Новости