Android va Linux ma'lum ma'noda amakivachcha ekanligi hammaga ma'lum. Har holda, ommaviy e'tiqod aynan shunday. Aslida, hamma narsa biroz murakkabroq: eng mashhur mobil OT faqat Linux yadrosidan foydalanadi. Bu shuni anglatadiki, "qutidan tashqarida" to'g'ridan-to'g'ri muvofiqlik (har ikkala tizim haqida ham aytish mumkin bo'lgan darajada) mavjud emas. Biroq, bizga Linux uchun Android emulyatori kerak bo'lganda, umumiy kelib chiqish o'ynaydi.

Windows uchun emulyatorlarda biz aslida Android bilan virtual mashinani ishga tushiramiz, bu esa ishlash uchun juda ko'p resurslarni talab qiladi. Linux muhitida integratsiya nazariy jihatdan boshqa darajada mumkin: alohida "qum qutisi" o'rniga tizim mobil platformani to'g'ridan-to'g'ri joriy yadroda ishga tushiradi, xayriyatki, uni o'zgartirishga hojat yo'q. Ilovalar tashqarida alohida oynalarda ko'rsatilishi mumkin bo'lgan tarzda paketlangan. Bundan tashqari, ular hatto 3D apparat tezlashuvidan ham foydalanishlari mumkin, bu esa foydalanuvchi tajribasini zerikarli sandboxlar chegarasidan tashqariga olib chiqadi. Foydalanuvchi uchun bu ilovalar sekinlashmasligini va hech kim tizim resurslarini isrof qilmasligini anglatadi.

Bugungi kunda Linux-da Android ilovalarini ishga tushirish uchun bir nechta ilovalar mavjud (shu jumladan Google-ning rasmiy emulyatori - Chrome uchun kengaytma sifatida yaratilgan ARC Welder). Biroq, Linuxda to'liq huquqli Android muhiti faqat 2017 yilda paydo bo'ldi. Ushbu mo''jiza Anbox deb ataladi va faqat x86/64 protsessorlari bilan, shuningdek, faqat Ubuntu distributivlari (qat'iy nashrlar 17.04, 16.10, 16.04, 14.04), Linux Mint, Neon va Elementary bilan mos keladi.

Anbox o'rnatilmoqda

Anbox o'zi mustaqil Snappy o'rnatish paketi sifatida yoki skriptni ishga tushirish orqali o'rnatilishi mumkin bo'lgan omborda masofaviy o'rnatuvchi sifatida taklif etiladi. Masalan, Ubuntuda bu quyidagicha amalga oshiriladi:

  1. Skriptni yuklab oling:

$ wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer


Skriptga dasturni o'rnatish uchun zarur bo'lgan huquqlarni bering:

$ chmod +x anbox-o'rnatuvchisi

  1. Skriptni ishga tushiring:

$ sudo ./anbox-installer

  1. Agar terminal sizdan konsol qatoriga yozishingizni so'rasa "MEN ROZIMAN", bajaring.

O'rnatish tugagach, kompyuteringizni qayta ishga tushiring. Ehtimol, tizimning o'zi buni sizga taklif qiladi. Agar hamma narsa yaxshi bo'lsa, qayta ishga tushirgandan so'ng, menyuda "Anbox" bandi paydo bo'ladi.

Boshqa Linux distributivlari uchun protsedura biroz boshqacha bo'lishi mumkin. Ularning aksariyati Snap paketlarini ham qo'llab-quvvatlaydi. Qanday bo'lmasin, hech kim sizni manbalardan to'plamni to'plash uchun bezovta qilmaydi.

Agar siz Snap paketini yuklab olishni xohlasangiz, o'rnatish buyrug'i quyidagicha bo'ladi:

sudo snap install --classic anbox-installer && anbox-installer

Keyin 1 raqamini kiriting va Enter tugmasini bosing, so'ng yozing « IQAZIRISH" va harakatni tasdiqlang.

Anbox-da ilovalarni o'rnatish

Emulator (yaxshi, qat'iy aytganda, bu paketlovchi, lekin ko'pchilik uchun u hali ham Linux uchun Android emulyatori) ilovalarni ishga tushirish uchun mo'ljallangan. Xo'sh? Google bunday deb o'ylamaydi. Good Corporation, agar ular sertifikatlanmagan bo'lsa, qurilmalarga ruxsat berishni rad etadi. Va bizning Anbox umuman qurilma emas, shuning uchun u hatto nazariy jihatdan ham sertifikatlashdan o'tmaydi.

Biroq, Anbox-da ilovalarni o'rnatishning bir usuli bor. Gap shundaki, har qanday apparat Android qurilmasi singari, Anbox ham ADB disk raskadrovka rejimiga ega va u dastlab faol. ADB buyruqlar to'plamini tizimning o'ziga o'rnatish qoladi. Ubuntu uchun bu terminalga quyidagi so'rov bilan amalga oshirilishi mumkin:

$ sudo apt-get install android-sdk-platform-tools

Xuddi shu "Android SDK platformasi vositalari" orasida OTB bor.

Shundan so'ng, siz faqat kerakli ilovalarning o'rnatish fayllarini yuklab olishingiz kerak. Buning uchun juda ko'p manbalar mavjud: global apkmirrordan tortib, raqam va uchta harfning taniqli forumigacha.

Fayllarni yuklab oladigan manzilni eslab qoling (masalan, Yuklashlar). Ubuntu'da ilovalarni ishga tushirish buyrug'i odatda quyidagicha ko'rinadi:

$ adb install ~/Downloads/filename.apk

O'rniga filename.apk ilova fayl nomini almashtirishingiz kerak.

Shunday qilib, Android ilovalari oyna rejimida ishlaydi. Albatta, ishlash tizim parametrlariga bog'liq, lekin umuman olganda, ilovalar juda tez ishlaydi.

Anbox-da ishlaydigan Android ilovalarining xususiyatlari

Garchi Linux yadrosi tufayli hech qanday muammo bo'lmasligi kerakdek tuyulsa ham, aslida juda ko'p nuanslar mavjud. Keling, quyidagilarni ta'kidlaymiz:

  • Boshqaruvlarga ko‘nikishingiz shart emas. Orqaga tugmasi Esc tugmasi yordamida simulyatsiya qilinadi va ekrandagi imo-ishoralar o'rniga siz sichqonchani ishlatishingiz mumkin.
  • Agar dastur printsipial jihatdan x86/64 ni qo'llab-quvvatlamasa, u ishlamaydi. Bu virtual mashinadan voz kechishning salbiy tomoni.
  • Bufer asosiy OT bilan birlashadi. Afsuski, yuqoriroq darajadagi integratsiya hali mavjud emas.
  • Play Marketni Android tasviriga integratsiya qilish uchun retseptlar mavjud. Agar siz ularga amal qilsangiz, Anbox yordamida siz ancha funktsional echimga ega bo'lishingiz mumkin. Lekin siz buni osonroq qilishingiz va odatdagidek uchinchi tomon ilovalari do'konini o'rnatishingiz mumkin.

Androidda Linuxni ishga tushirish mumkin! Va buning uchun sizga ildiz otgan qurilma kerak emas: barcha kerakli dasturlar rasmiy Google Play do'konida mavjud. 10-15 daqiqada siz Android-dan ilg'or funksionalligi bilan farq qiladigan operatsion tizimga ega bo'lishingiz mumkin.

Eslatma: Agar siz bizning ko'rsatmalarimizga amal qilsangiz, Linux OS virtual muhitda ishlaydi. Android hali ham fonda ishlaydi. Bunday tizimni to'liq deb atash noto'g'ri. Shunga qaramay, u standart vazifalar ro'yxatini yaxshi bajaradi.

O'rnatishdan oldin barcha keraksiz ilovalarni yoping va Android qurilmangizning operativ xotirasini tozalang.

1. Google Play do'konidan GNURoot Debian va XServer XSDL-ni o'rnating.

2. Linuxni o'rnatishni boshlashdan oldin qurilmangiz barqaror Wi-Fi tarmog'iga ulanganligiga ishonch hosil qiling. GNURoot-ni ishga tushiring. Kerakli muhit paketlari yuklab olishni boshlaydi.

O'rnatish Internetga ulanish tezligiga qarab 30 soniyadan bir necha daqiqagacha davom etadi. Quyidagi xabar paydo bo'lguncha belgilarga e'tibor bermang:

root@localhost:/#

"" tushunchasi bilan tanish bo'lganlar uchun bu chiziq sizni qo'rqitmasin: dastur qurilmaga hech qanday zarar etkazmaydi, chunki u "qum qutisi" da ishlaydi.

3. Quyidagi buyruqni kiriting:

apt-get yangilanishi

Paketlar yuklab olinmaguncha kuting. Bu to'plam ro'yxatlarini o'qish... Bajarildi qatorida ko'rsatiladi.

4. Endi boshqa qatorni kiriting:

apt-get yangilash

“Davom etishni xohlaysizmi?” degan savolga. inglizcha Y harfini kiriting va Enter tugmasini bosing. Paketlarni o'rnatish boshlanadi.

Bu safar o'rnatish jarayoni biroz ko'proq vaqt oladi. O'rnatish tugashini sabr bilan kuting, kerakli chiziq paydo bo'lguncha:

root@localhost:/#

Debian Linux muhiti o'rnatildi va endi siz grafik qobiqni joylashtirishni davom ettirishingiz mumkin.

5. Barcha Linux tarqatish paketlarini o'rnatish quyidagi buyruq bilan amalga oshiriladi:

apt-get install lxde

Tizim yadrosini qator yordamida o'rnatish imkoniyati ham mavjud:

apt-get install lxde-core

Y ni qayta kiritish va Enter tugmasini bosib o'rnatishni tasdiqlang. Paketni yuklab olish jarayoni boshlanadi.

O'rnatish vaqtida barcha fayllar muvaffaqiyatli yuklab olinganiga va o'ramdan chiqarayotganda qurilmangizda bo'sh joy qolmasligiga ishonch hosil qiling. Aks holda, tizimni ishga tushirish muvaffaqiyatsiz bo'ladi.

6. Operatsion tizimni o'rnatishni yakunlash uchun siz uchta qo'shimcha yordam dasturini yuklab olishingiz kerak:

  • XTerm - Linux grafik qobig'idan terminalga kirish uchun;
  • Synaptic Package Manager - apt paketlarni boshqarish va ilovalarni yuklab olish uchun;
  • Pulseaudio - ovoz drayverlarini o'rnatish uchun.

Barcha uchta yordamchi dastur bitta GNURoot terminal buyrug'i yordamida o'rnatiladi:

apt-get o'rnatish xterm sinaptik pulseaudio

Qurilmaga taxminan 260 MB maʼlumot yuklab olinadi.

7. Endi GNURoot ilovasini minimallashtiring va avval o'rnatilgan XServer XSDL ni oching. Qo'shimcha shriftlarni yuklab olishga rozilik bildiring. O'rnatish tugallangandan so'ng, ko'k fon va oq matnli chayqalish ekranini ko'rmaguningizcha, ekranga bir necha marta bosing (ilova ruxsat va shrift hajmini tanlashni so'raydi - barchasi sizning xohishingizga bog'liq).

GNURoot-ni qayta ishga tushiring va quyidagi ikkita buyruqni ketma-ket kiriting:

eksport DISPLAY=:0 PULSE_SERVER=tcp:127.0.0.1:4712
startlxde &

Tizimni qayta ishga tushirish ketma-ketligi (siz Linuxni qayta ochmoqchi bo'lganingizda) quyidagicha ko'rinadi: XServer XSDL-ni ishga tushiring va ko'k ekran paydo bo'lishini kuting, GNURoot-ni oching va yuqoridagi ikkita buyruqni kiriting, XServer XSDL-ga qayting.

Agar terminal noto'g'ri buyruq haqida shikoyat qilsa, ushbu ko'rsatmalarning 5-bosqichiga qayting va yalang'och yadroni o'rnatishga harakat qiling. Android qurilmangizning xotira holatini tekshiring.

8. Endi XServer XSDL-ni oching, bir necha soniya kuting va sizda Linux ishlashga tayyor bo'ladi.

Ilovalarni o'rnatish uchun pastki chap burchakda Boshlash menyusini oching va "Ishga tushirish" ni tanlang. Synaptic-ni kiriting va Enter tugmasini bosing.

Ochilgan oynada qidiruvdan foydalaning va kerakli ilovalarni o'rnating. Bu Firefox brauzeri, GIMP tasvir muharriri, Libre ofis to'plami va boshqa Linux-mos keluvchi dasturlar bo'lishi mumkin.

Albatta, Linux-ni o'rnatishning ushbu variantini Android-da operatsion tizimni to'liq ishga tushirish deb atash mumkin emas. Virtual Linuxda bir nechta cheklovlar mavjud, ammo agar siz simsiz sichqoncha va klaviaturadan foydalansangiz (ehtimol, OTG adapteri va USB uyasi bilan ulanishi mumkin), siz smartfon yoki planshetingizni kattalar OT funksiyasiga ega noutbukga aylantirishingiz mumkin.

Bugun biz Android ilovalarini Linux tizimida emulyatordan foydalanmasdan ishga tushirish haqida gaplashamiz.

Anbox

  • Anbox nima?
  • Ilova menejeri
  • Shashlikdan nimasi bilan farq qiladi
  • Anbox qanday ishlaydi

Anbox nima?

Unbox - bu Vine-ga o'xshash narsa, faqat Android ilovalarini ishga tushirish uchun. Unbox konteynerlashtirish texnologiyasidan foydalanadi, bu sizga ilovalarni xostning apparat va yadrosida mahalliy dasturlar bilan solishtirish mumkin bo'lgan ishlashga imkon beradi. Ilovalarni ishga tushirish uchun LXC konteynerlari va (hozircha) DKMS orqali tuzilgan yadro modullaridan foydalaniladi.

U boshqa emulyatorlardan yaxshi ishlashi, ochiq manba (ZhPLv3), ontopik ostida mavjudligi va xost bilan yaxshi integratsiyalashuvi bilan ajralib turadi. Xost integratsiyasi, albatta, har qanday VM echimlaridan ustundir va deyarli ARC kabi yaxshi.

Ishga tushirilgandan so'ng darhol ekranda Anbox uchun maxsus yozilgan oddiy "ilova menejeri" ni ko'rasiz. Bu erda juda ko'p ilovalar mavjud: standart galereya, kalendar, sozlamalar va boshqalar, lekin bozor yo'q. Va shuning uchun siz so'ragan birinchi narsa: ilovalarni Anbox-ga qanday o'rnatish kerak?

Anbox-dagi ilovalar menejeri

Va bu erda narsalar qiziqarli bo'ladi. Anbokh ishlab chiquvchilari o'zlarining "qurilmasi" sertifikatlashdan o'tmaguncha bozorni va boshqa har qanday Google dasturiy ta'minotini, shu jumladan Google xizmatlarini o'zlarining emulyatori bo'lmagan yetkazib berishga qo'shish huquqiga ega emaslar. Qurilma sertifikatlashdan o'ta olmaydi - bozor bo'lmaydi.

Lekin! Anbox-da, ADB-dan foydalangan holda disk raskadrovka rejimi sukut bo'yicha faollashtirilgan (standart Android-da siz hali ham kirishingiz kerak bo'lgan ishlab chiquvchilar sozlamalarida yoqilgan), shuning uchun siz undan foydalanib dasturni o'rnatishingiz mumkin. Siz ADB o'zini quyidagicha o'rnatishingiz mumkin:

$ sudo apt-get install android-sdk-platform-tools // Ubuntu $ sudo pacman -S android-tools // Arch Linux

Endi qiziqarli qism keladi: siz kerakli dasturning APK paketini topib yuklab olishingiz kerak. Buning uchun apkpure veb-saytidan foydalanishingiz mumkin. Keyin faqat quyidagi buyruqni bajarish qoladi (FX File Explorer uchun misol):

$ adb install ~/Yuklashlar/File Explorer_v5.1.1.0_apkpure.com.apk FX File Explorer

Tayyor! Ilovalarni o'rnating, zavqlaning, keyinroq ko'rishguncha. Hazillashaman, aslida juda ko'p tuzoqlar bor. Masalan, Anbox-ni o'rnatgandan so'ng, men Opera Mini qanday ishlashini sinab ko'rishga qaror qildim, hatto Internet sizga kaptar pochtasi orqali etib borsa ham, sahifalarni tezda ko'rsatishi mumkin bo'lgan brauzer. Axir, u ish stoli uchun mavjud emas.

Natijada, bu ekranda paydo bo'ldi:

$ adb install ~/Yuklamalar/Opera Mini tezkor veb-brauzer_v24.0.2254.115689_apkpure.com.apk o'rnatib bo'lmadi /home/j1m/Yuklashlar/Opera Mini tezkor veb-brauzer_v24.0.2254.115689_apkpure.com.apk.

Buning izohi oddiy: Opera Mini kodining aksariyati ARM platformasi uchun ikkilik tizimga kompilyatsiya qilingan C++ tilida yozilgan. Va bizning mashinamiz x86_64 arxitektura protsessoriga ega bo'lganligi sababli, Android nima uchun ishlamayotganini tushunishga qiynalmasligimiz uchun dasturni o'rnatish bosqichida ehtiyotkorlik bilan mixlab qo'ydi.

Aslida, bozor shunga o'xshash ilovalar bilan to'la va siz tez-tez me'moriy nomuvofiqliklarga duch kelasiz.


Ilovalarni alohida ish stoli oynalarida ishga tushirishning ikkinchi qiziqarli xususiyati: har bir dastur endi uning yuzi qattiq siqilishi yoki cho'zilishi haqiqatini qabul qilishga tayyor emas. Aksariyat zamonaviy ilovalar bu holatda o'zini to'g'ri tutadi - Google Android 7.0 da suzuvchi oynalarni qo'llab-quvvatlashni amalga oshirishga tayyorgarlik ko'rayotganda bu haqda g'amxo'rlik qildi. Ammo eski dasturiy ta'minot bilan qiyinchiliklar paydo bo'lishi mumkin, garchi odatda hamma narsa belgilangan o'lchamdagi oyna bilan tugaydi.

Xo'sh, uchinchi. Unbox, Shekspir tilida, alfa dasturiy ta'minot, ya'ni yigitlar bizga aytayotganga o'xshaydi: hamma narsa yomon va beqaror bo'ladi va siz koordinatalarni, kamera va mikrofonni aniqlashni qo'llab-quvvatlash kabi narsalarni unutishingiz mumkin. Bundan tashqari, ba'zi hollarda siz Internetni unutishingiz mumkin va seans menejeri vaqti-vaqti bilan ishlamay qoladi va uni qayta ishga tushirishga to'g'ri keladi.


Lekin! Unbox joriy batareya darajasini, RAM hajmini va hatto qattiq diskni (aniqrog'i, /home bo'limi) to'g'ri aniqlaydi. Va umuman olganda, u tez ishlaydi va uni yiqitish istagini uyg'otmaydi. Ilova menejeri ishlayotganida iste'mol qilingan RAM miqdori faqat 448 MB ni tashkil qiladi.
Ilovalar butun diskni ko'radi

FAQ Anbox

Orqaga tugmani qanday bosish va sahifalarni aylantirish mumkin?

Orqaga tugmasi Esc yordamida emulyatsiya qilinadi. Klaviaturadan ilovada harakatlanish uchun ham foydalanish mumkin (yorliq va strelkalar). G'ildirak bilan yoki sichqonchaning chap tugmachasini bosib, yuqoriga va pastga siljiting.

Anbox-dan Android Studio-da loyihalarni ishga tushirish uchun foydalanish mumkinmi?

Ha! Bundan tashqari, buning uchun qo'shimcha choralar ko'rish kerak emas. Loyihani ishga tushirishda emulator-6663 kabi nomga ega qurilmani tanlash kifoya.

Linux-dan ishlaydigan Android-ning fayl tizimiga kirish mumkinmi?

Ha, u /var/lib/anbox/rootfs katalogida joylashgan, lekin u faqat o'qish uchun mo'ljallangan. Lekin siz shaxsiy ilovalar kataloglari (ma'lumotlar/ma'lumotlar) tarkibini ko'rishingiz mumkin.

Ilovalar do'konini o'rnatishim mumkinmi?

Google Play do'konini o'rnatishning nazariy imkoniyati mavjud. Buning uchun siz Android fayl tizimi tasvirini tahlil qilishingiz va unga GApps-ni integratsiyalashingiz kerak. Biroq, Yandex.Store yoki boshqa uchinchi tomon bozorini o'rnatish ancha oson. Bundan tashqari, uchinchi tomon manbalaridan o'rnatishni faollashtiring: Sozlamalar → Xavfsizlik → Noma'lum manbalar.

Android Anbox tasvirini qanday qismlarga ajratish mumkin?

Juda oddiy:
$ sudo apt-get o'rnatish squashfs-tools // Ubuntu $ sudo pacman -S squashfs-tools // Arch Linux $ unsquashfs -f -d /to/unpack /var/lib/anbox/android.img

CyanogenMod kabi boshqa Android tasviridan foydalanish mumkinmi?

Yo'q. Buni amalga oshirish mumkin bo'lmagan ikkita sabab bor. Birinchidan, u x86_64 uchun Android qurilmasi bo'lishi kerak. Ikkinchidan, ushbu tuzilma maxsus Anbox modifikatsiyalarini o'z ichiga olishi kerak.

Anbox Shashlikdan qanday farq qiladi

Shashlik har bir ilovani emulyatorda ishga tushiradi. Boshqacha qilib aytadigan bo'lsak, dastur belgisini bosganingizda, emulyator ishga tushadi, u o'chirilgan Android muhitini o'z ichiga oladi va shundan keyingina dastur ishga tushadi. Anbox ancha engil va samaraliroq.

Anbox qanday ishlaydi

Anbox juda oddiy g'oyaga asoslanadi: agar Android Linux yadrosi ustida ishlaydigan virtual mashina bo'lsa, nega Android ilovalarini oddiy Linux tarqatish muhitida ishga tushirishga urinib ko'rmaysiz. Bu aniq g'oya va Android-ning x86 porti paydo bo'lganidan beri ko'plab ishlab chiquvchilar uchun paydo bo'lgan. Ba'zi dasturchilar uni Android muhitini chrootga joylashtirish orqali amalga oshirishga harakat qilishdi, ammo ishlar yarim ishlaydigan tushunchalardan tashqariga chiqmadi (misol: ).

Loyihani yakunlash uchun Anbox dasturchilariga bir yarim yil kerak bo'ldi. Ular Android ilovalarini Linux ish stoliga integratsiyalash, deyarli to'liq mosligini ta'minlash va eng muhimi, barchasini tez, nosozliklarsiz va sozlash uchun ko'p qadamlarni talab qilmasdan ishlashiga muvaffaq bo'lishdi.

Android muhitining o'zi (aytmoqchi, eng so'nggi Android 7.1.1 asosida) Docker asosiga ega bo'lgan nomlar bo'shliqlari texnologiyasidan foydalangan holda boshqariladigan sandboxda qulflangan. Nomlar bo'shliqlari Linux tarqatish muhitidan atrof-muhitni butunlay uzib tashlaydi va jihozlar bilan barcha ishlar anboxd demoni orqali amalga oshiriladi. 3D ilovalaridagi tasvirlarni ko'rsatish uchun rasmiy Android emulyatoridan olingan maxsus OpenGL ES → OpenGL tarjimonidan foydalaniladi.

Linux yadrosini ham o'zgartirish kerak edi, aniqrog'i, Android-da tizim komponentlari (IPC) o'zaro aloqada bo'lgan Anbox to'plamiga biriktiruvchi va ashmemni o'z ichiga olgan modullar qo'shildi. Ishga tushirishdan oldin Unbox modullarni yadroga yuklaydi va /dev/binder va /dev/ashmem qurilmalariga to'g'ri kirish huquqlarini o'rnatish uchun udev qoidasini qo'shadi.

Anbox har bir ilovani o'z oynasiga o'zgartirilgan hwcomposer kompozit menejeri yordamida joylashtiradi, bu Android grafik qatlamlarni qoplash uchun foydalanadi. Hwcomposer har bir ilovaning barcha qatlamlarini so'raydi va ularni Anbox-ga beradi, so'ngra alohida ilovalar uchun alohida oynalar yaratadi.

Ushbu texnik echimlarning barchasi Unbox-ni haqiqatan ham tez, ishlatish uchun qulay va resurslarni tejaydigan “emulator”ga aylantiradi. Shu jumladan 3D ilovalarida.

Anbox ikkita komponentdan iborat: konteyner menejeri va sessiya menejeri.

Konteyner menejeri ichida ishlaydigan Android muhiti bilan sandboxlarni boshqaradi. Uning vazifasi Android tizimini to'g'ri ishga tushirish, uning ishlashini saqlab qolish va uni to'g'ri o'chirishdir.

Sessiya menejeri, o'z navbatida, sandbox ichida va asosiy Linux tizimi bilan Android aloqasi uchun javobgardir. Uning vazifasi ilovalarni ishga tushirish so'rovlariga javob berish va ularni turli oynalar bo'ylab tarqatishdir.

Umuman olganda, Anbox yordamida Android ilovasini ishga tushirish quyidagicha ko'rinadi:

  1. Bog'lovchi va ashmem modullari yadroga yuklanadi.
  2. Konteyner menejeri ishga tushirildi, u ichida Android o'rnatilgan sandbox joylashadi.
  3. Sessiya menejeri ishga tushadi, u Android muhitini ishga tushiradi.
  4. Foydalanuvchi dasturni ishga tushirish buyrug'ini beradi, uni seans menejeri qabul qiladi va qayta ishlaydi.
  5. Seans menejeri buyruqni kutmoqda.

1–4-qadamlar Anbox-ni tayyorlang va uni bir marta ishga tushiring, odatda tizim ishga tushganda.

Ushbu arxitektura bo'sh rejimda kichik (taxminan 400 MB) xotira yuki tufayli ilovalarni deyarli bir zumda ishga tushirish imkonini beradi.


xulosalar

Shubhasiz, Anbox e'tiborga loyiqdir. Ha, u moslik bilan bog'liq muammolarga ega, u kamera va mikrofoningiz bilan ishlay olmaydi, u buziladi. Ammo bu alfa versiyasi va alfa uchun u juda yaxshi ishlaydi.

Tasodifan, Internetda kezib, ikkinchisini topdim har qanday operatsion tizim uchun Android ilovalarini ishga tushirish usuli. Sizga kerak bo'lgan yagona narsa o'rnatilgan Google Chrom yoki men kabi o'rnatilgan kengaytmali Chromium ARC payvandchisi. Usul har qanday tarqatishda va Windowsda ishlaydi. Ilgari bizning resursimizda yana biri ko'rib chiqilgan. Quyida tavsiflangan kamchilik - bu Play Marketa-ni qo'llab-quvvatlamaslik.

Ushbu kengaytma Google tomonidan Android dasturiy ta'minot ishlab chiqaruvchilariga har qanday operatsion tizimda mobil qurilmalar uchun ilovalarni yaratish va sinovdan o'tkazish uchun oddiy va qulay vositalar to'plamini taklif qilishga urinishdir. Ushbu maqsadga qaramay, kengaytma keng tarqalgan va hamma uchun mavjud. Bu juda oddiy:

Google Chromium-ni ishga tushiring, asosiy menyu-sozlamalar-kengaytmalar, ARC Welder-ni qidiring va o'rnating:

2. Mening asosiy menyumda alohida ilovalar guruhi (Linux Mint 17.3 Cinnamone) sifatida ARC Welder elementi paydo bo'ldi. Tarqatishingizda, masalan, "Internet" guruhiga qarang. Keling, ishga tushiramiz:

Men foydalanmasligim haqida ogohlantirish Chrome OS hech qanday dahshatli narsani bashorat qilmaydi. Aslida. mahsulot dastlab ushbu tizim uchun yaratilgan.

Hammasi tugadi, endi siz Internetda .apk kengaytmali istalgan faylni yuklab olishingiz va uni qo'shishingiz kerak. Bozor, yuqorida aytib o'tilganidek, ishlamaydi va bu, mening fikrimcha, eng jiddiy kamchilik, shuningdek, dastur o'z ma'lumotlarini saqlash uchun papka haqida so'raydi. Jild yozish uchun ruxsatlarga ega bo'lishi kerak.

ARC Welder sozlamalari portret/landshaftni tanlash imkonini beradi - tasvir variantini, piksellar sonini va almashish buferini o'chirish/yoqish. Bugungi kunda kengaytma Android 4.4 rejimini taqlid qiladi.

Umuman olganda, Linuxda hamma narsa har doimgidek - juda oddiy. Agar sizga Play Market kerak bo'lmasa, ushbu usuldan foydalaning. Kerakli - ha

Kuningiz xayrli bo'lsin.

2016-06-22T14:20:26+00:00 adminMa'muriyat Gadjetlarni tarqatish Boshqa ilovalar Internet maqolalari uchun yordamchi dasturlar Android, ARC Welder, Chrome, Chrome OS, Chromium, gadjetlar, gadjetlar, Google, Google Chrome, Play Market, Gadjetlar, mobil ilovalar, Mobil qurilmalar, Tarqatish yangiliklari, Qo'llanmalar, Hacks, Emulatorlar

Tasodifan, Internetda kezish paytida men har qanday operatsion tizim uchun Android ilovalarini ishga tushirishning ikkinchi usulini topdim. Sizga kerak bo'lgan yagona narsa o'rnatilgan Google Chrom yoki men kabi ARC Welder deb nomlangan o'rnatilgan kengaytmali Chromium. Usul har qanday tarqatishda va Windowsda ishlaydi. Ilgari bizning resursimizda yana biri ko'rib chiqildi ...

[elektron pochta himoyalangan] Administrator LINUX o'quv qo'llanma

Barcha mumkin bo'lgan operatsion tizimlar uchun juda ko'p Android emulyatorlari mavjud. Ularning eng yomoni sudrab boradi, eng yaxshisi tezda ishlaydi va ba'zan hatto o'ynashga imkon beradi. Ikkinchisi odatda faqat Windows uchun mavjud va Linuxda shunday ishlaydi. Ammo bugun Linux ko'chasida bayram bor: bizda Android ilovalarini to'g'ridan-to'g'ri Linuxda, hech qanday emulyatsiya yoki tormozsiz, har biri o'lchamini o'zgartirish qobiliyatiga ega alohida oynada ishga tushirish usuli mavjud. Meet: Anbox - ish stolida Android ilovalarini ishga tushirishning eng yaxshi usuli.

Anbox Shashlikdan qanday farq qiladi

Loyihani yakunlash uchun Anbox dasturchilariga bir yarim yil kerak bo'ldi. Ular Android ilovalarini Linux ish stoliga integratsiyalash, deyarli to'liq mosligini ta'minlash va eng muhimi, barchasini tez, nosozliklarsiz va sozlash uchun ko'p qadamlarni talab qilmasdan ishlashiga muvaffaq bo'lishdi.

Android muhitining o'zi (aytmoqchi, eng so'nggi Android 7.1.1 asosida) Docker asosiga ega bo'lgan nomlar bo'shliqlari texnologiyasidan foydalangan holda boshqariladigan sandboxda qulflangan. Nomlar bo'shliqlari Linux tarqatish muhitidan atrof-muhitni butunlay uzib tashlaydi va jihozlar bilan barcha ishlar anboxd demoni orqali amalga oshiriladi. 3D ilovalaridagi tasvirlarni ko'rsatish uchun rasmiy Android emulyatoridan olingan maxsus OpenGL ES → OpenGL tarjimonidan foydalaniladi.

Linux yadrosini ham o'zgartirish kerak edi, aniqrog'i, Android-da tizim komponentlari (IPC) o'zaro aloqada bo'lgan Anbox to'plamiga biriktiruvchi va ashmemni o'z ichiga olgan modullar qo'shildi. Boshlashdan oldin, Anbox modullarni yadroga yuklaydi va /dev/binder va /dev/ashmem qurilmalariga to'g'ri ruxsatlarni o'rnatish uchun udev qoidasini qo'shadi.

Anbox har bir ilovani o'z oynasiga o'zgartirilgan hwcomposer kompozit menejeri yordamida joylashtiradi, bu Android grafik qatlamlarni qoplash uchun foydalanadi. Hwcomposer har bir ilovaning barcha qatlamlarini so'raydi va ularni Anbox-ga beradi, so'ngra alohida ilovalar uchun alohida oynalar yaratadi.

Ushbu texnik echimlarning barchasi Anbox-ni haqiqatan ham tez, ishlatish uchun qulay va resurslarni tejaydigan “emulyator”ga aylantiradi. Shu jumladan 3D ilovalarida.

Anbox ikkita komponentdan iborat: konteyner menejeri va sessiya menejeri.

Konteyner menejeri ichida ishlaydigan Android muhiti bilan sandboxlarni boshqaradi. Uning vazifasi Android tizimini to'g'ri ishga tushirish, uning ishlashini saqlab qolish va uni to'g'ri o'chirishdir.

Sessiya menejeri, o'z navbatida, sandbox ichida va asosiy Linux tizimi bilan Android aloqasi uchun javobgardir. Uning vazifasi ilovalarni ishga tushirish so'rovlariga javob berish va ularni turli oynalar bo'ylab tarqatishdir.

Umuman olganda, Anbox yordamida Android ilovasini ishga tushirish quyidagicha ko'rinadi:

  1. Bog'lovchi va ashmem modullari yadroga yuklanadi.
  2. Konteyner menejeri ishga tushirildi, u ichida Android o'rnatilgan sandbox joylashadi.
  3. Sessiya menejeri ishga tushadi, u Android muhitini ishga tushiradi.
  4. Foydalanuvchi dasturni ishga tushirish buyrug'ini beradi, uni seans menejeri qabul qiladi va qayta ishlaydi.
  5. Seans menejeri buyruqni kutmoqda.

1-3 qadamlar Anbox-ni tayyorlang va uni bir marta ishga tushiring, odatda tizim yuklanganda.

Ushbu arxitektura bo'sh rejimda kichik (taxminan 400 MB) xotira yuki tufayli ilovalarni deyarli bir zumda ishga tushirish imkonini beradi.


xulosalar

Shubhasiz, Anbox e'tiborga loyiqdir. Ha, u moslik bilan bog'liq muammolarga ega, u kamera va mikrofoningiz bilan ishlay olmaydi, u buziladi. Ammo bu alfa versiyasi va alfa uchun u juda yaxshi ishlaydi.