GLoDroid: що це таке | GlobalLogic Ukraine

GloDroid: актуальний Android на одноплатному комп’ютері

share

Кінець року – кращий час ділитись здобутками, тому представляємо новий підрозділ у BlogSpotConcepts! Тут ми будемо ділитись інформацією про розробки наших інженерів, їх моделі, прогрес та шляхи застосування. Тож вітайте першу – GloDroid!

Назва: GloDroid 

Локація: Харків

Автори: Maryna Sergiyenko та її команда.

Статус: In Progress

Уявіть, що у вас є остання версія Android, одноплатний комп’ютер і цілий рік вільного часу на експерименти. Що б ви зробили? Спробували б запустити на ньому Android? А тепер уявіть, що це вже зроблено: презентуємо вашій увазі GloDroid! Це безпечне (no backdoor) та недороге рішення з відкритим кодом, яке працює прямо “з коробки” без жодних додаткових маніпуляцій.

GloDroid – це проєкт по портуванню та адаптації Android-додатків з відкритим кодом для роботи на широко доступних одноплатних комп’ютерних платформах.

Основними цілями GloDroid є:

Створити дешеву та надійну платформу з найсучаснішим Android “на борту” для створення прототипів, навчання та досліджень.

Зробити запуск, створення та розгортання Android середовища на вашій платі легким та швидким. Більше не потрібно будувати ядро, завантажувати зовнішні бінарні файли та витрачати час, аби розмістити їх у потрібному місці.

Поділитись усіма напрацюваннями та здобутками зі спільнотою.

На відміну від існуючих пристроїв, на кшталт Raspberry Pi, що мають на борту старі версії Android, GloDroid постачається з актуальною версією Android, що використовує open-source драйвери, залишається актуальною та має підтримку від Google.

Як це виглядає?

Проєкт складається з одноплатного комп’ютера — Orange Pi Plus 2E — та Android 10 з відкритим кодом на борту.

Чому ми обрали саме цю плату?

  • Вона дешева.
  • Має велику спільноту.
  • Гарне “залізо”, що задовольняє нашим цілям: 32-bit процесор, 4-ядра 1.6 GHz, Mali-400 графічний чіп, 2 GB RAM та 16 GB MMC. Плюс усі необхідні інтерфейси: USB для периферії, Wi-Fi та Ethernet.

GloDroid базується на Google AOSP та містить репозиторії, зазначені у таблиці нижче. Ми зробили makefiles для конфігурації Android на основі того, що ми хочемо створити (TV, Automotive, та інше) та яку підтримку HAL/сервісів ми хочемо мати (наприклад, Wi-Fi та Bluetooth).

Ключові переваги рішення:

  • Відкрите та безкоштовне рішення настільки, наскільки це можливо.
  • Має актуальну версію Android.
  • Близьке до основного Android, наскільки це можливо.
  • Поставляється з усіма необхідними бібліотеками та софтом, так що користувач може легко запустити свіжий Android без зайвих дій.
  • Працює “з коробки”.
Що ми зробили

Фінальний проєкт ми виклали на GitHub. А ось його wiki.

Також ми провели спеціальний вебінар та розповіли про наші розробки на DOU.

Сьогодні, GloDroid успішно працює на базі Android 11 та Linux 5.6.

Підтримує такі плати:

  • Orange PI family: Plus 2E / PC / PI 3 / WIN
  • Pinephone / Pinetab
  • Raspberry PI 4
  • PodCast

Та такі девайси:

  • Pinephone
  • Pinetab

Ми написали приблизно 1,800 рядків Android makefiles та близько 2000 рядків файлів коду C/C++/DTS та ін., аби все працювало добре. Близько 2% часу роботи над проєктом було присвячено розробці коду, 5% – створенню файлів побудови. Для наочності: протягом 3–4 місяців фази активного розвитку, лише 10 днів було витрачено на написання коду, а 25% часу ми витратили на компіляцію та виправлення помилок.

Android OS – це система, що живе та розвивається у реальному часі. Що було актуальним для версії 8, часто-густо вже немає жодного сенсу для версії 10.
Нам довелось багато аналізувати вихідний код, тому ми впевнено кажемо, що крім розв’язання практичної задачі портування, робота над проєктом значно покращила наші навички самоосвіти:

Заглибившись в офіційну документацію Google, ми зрозуміли логіку нового Android 11.

Ми набули практичного досвіду з наявними репозиторіями AOSP, з’ясували практичні аспекти їх роботи – щоб висвітлити деякі “сліпі місця” офіційної документації Google.

На цей момент ми зайняті виправленням помилок, про які нам сигналізувала спільнота через репозиторій GloDroid, та всебічно розбираємось з прев’ю Android 11 аби згодом портувати й цю версію.

Якщо вам сподобалась стаття, то запрошуємо долучитись до технічних спільнот, де крім спілкування на вас чекають вебінари та інший професійний контент:

Thank You.

The white paper will open in a new window.

If you experience issues with accessing or downloading the white paper, please contact info@globallogic.com.

click here to go back to the Insights page.