it:google:android

Toto je starší verze dokumentu!


Android

Chtěl jsem rozběhnout Android na Linuxu s Google Play. Abych mohl nainstalovat a spustit některé aplikace z Google Play. A tady jsou moje zkušenosti s různými variantami.

Anbox je bezplatná a open-source vrstva kompatibility, jejímž cílem je umožnit spouštění mobilních aplikací a mobilních her vyvinutých pro Android na distribucích Linuxu.

U Anboxu jsem narazil na to, že již není aktivně vyvíjen. Nainstalovat se dá ze snapu, ale kvůli opuštění vývoje jsem se rozhodl nevyužít.

snap install --devmode --beta anbox

Waydroid je vlastně takové pokračování Anboxu. Je to kontejner s Androidem pro Wayland. Jako první kámen úrazu je fajn říct, že Wayland je povinný. Když jsem se pokoušel spustit Waydroid pod X11, tak házel chybové hlášení.

[23:52:00] WAYLAND_DISPLAY is not set, defaulting to "wayland-0"
[23:52:00] Wayland socket '/run/user/1000/wayland-0' doesn't exist; are you running a Wayland compositor?

Proto jsem se musel do Ubuntu přihlásit přes compositor Wayland - což je docela jednoduché. Stačí při přihlašování do systému před vyplněním hesla zvolit, který compositor se má použít. Zda staré Gnome nebo Wayland.

Pak jsem šel do dokumentace, kde je postup na instalaci pro Ubuntu a jiné OS.

sudo apt install curl ca-certificates -y
curl https://repo.waydro.id | sudo bash
sudo apt install waydroid -y
sudo systemd start waydroid-container
waydroid init -f -s GAPPS #pro stažení kontejneru včetně Google Play 

Po instalaci stačí v Ubuntu najít novou aplikaci Google Play Store nebo Settings. Obě jsou už spouštěny z kontejneru.

Ovšem po spuštění Google Play jsem narazil na problém. Kontejner se choval tak, že není připojený k internetu. Takže Google Play se nikam nepřipojí a nepodaří se nic stáhnout.

Spustil jsem si shell Waydroidu:

sudo waydroid shell

A rovnou jsem otestoval pomocí příkazu ping, že mohu komunikovat s počítači v internetu. A potvrdilo se mi, že ne.

Později jsem našel instrukce pro nastavení sítě. Protože používám Ubuntu a ufw, tak toto byly příkazy, které jsem musel zadat.

sudo ufw allow 53
sudo ufw allow 67
sudo ufw default allow FORWARD

Ještě pro jistotu uvedu, že se instrukce nezadávají ve Waydroid shellu, ale v Ubuntu. Porty 53 a 67 jsem měl povolené, ale forwarding ne.

Když jsme si chtěl ověřit, jak se projevilo poslední pravidlo, tak jsem dal vypsat podrobnosti pomocí příkazu:

ufw status verbose
Stav: aktivní
Přihlašování: on (low)
Výchozí: deny (příchozí), allow (odchozí), allow (směrované)
Nové profily: skip
 
Do                         Akce        Od
--                         ----        --
53                         ALLOW IN    Anywhere                   # open DNS port
67,68/udp                  ALLOW IN    Anywhere                   # open DHCP ports
53 (v6)                    ALLOW IN    Anywhere (v6)              # open DNS port
67,68/udp (v6)             ALLOW IN    Anywhere (v6)              # open DHCP ports

Řádek: Výchozí: deny (příchozí), allow (odchozí), allow (směrované) ukazuje, že je FORWARD zapnutý.

Kdybych to chtěl vrátit zpět, tak zadám příkaz.

ufw default deny FORWARD
  • it/google/android.1688289471.txt.gz
  • Poslední úprava: 2023/07/02 09:17
  • autor: Petr Nosek