Noch ein eingesperrtes Android ...
veröffentlicht am 26.07.2020 mit 1046 Worten - Lesezeit: 5 Minute(n) in * GEBRABBEL * SOFTWARE *
Inhaltsverzeichnis
Neben der Möglichkeit, ein Android in einer virtuellen Maschine laufen zu lassen, gibt es auch die Möglichkeit eines Emulators, hier habe ich mich entschlossen, Anbox zu testen, das Projekt nennt sich selbst “Android in a box” …
Aus der Kurzbeschreibung:
Anbox packt das Android-Betriebssystem in einen Container, abstrahiert den Hardware-Zugriff und integriert zentrale Systemdienste in ein GNU/Linux-System. Jede Android-Anwendung wird wie jede andere native Anwendung in Ihr Betriebssystem integriert.
Installation
Hier habe ich mich nach der offiziellen Dokumentation gerichtet.
Anmerkung 1: ich gehe hier von einem normalen Debian-System mit vollwertigem Root-Account aus. Wer ein sudo-System nutzt, muß die entsprechenden Befehle, die ich hier als root ausführe, eben entsprechend ergänzen.
Anmerkung 2: Grundsätzlich lassen sich alle Arbeiten mit normalen Benutzerrechten durchführen, solange das nicht ausdrücklich anders angegeben ist.
Kernel-Module
Lt. Doku müssen für den Betrieb von Anbox zwei Kernel-Module installiert und verfügbar sein. Die Doku sagt über mein Debian aber auch (Ubuntu und verwandte Distros: dort müssen diese Module offenbar über PPA nachinstalliert werden):
Debian has enabled these modules since kernel 4.17.3. So you don’t need to bother how to install.
Dann wollen wir doch mal sehen, ob der Kernel die Mindestanforderung erfüllt (> Ver. 4.17.3):
System:
Host: Rechner Kernel: 4.19.0-9-amd64 x86_64 bits: 64 compiler: gcc
v: 8.3.0 Desktop: Cinnamon 3.8.8 Distro: Debian GNU/Linux 10 (buster)
und so liefert die Abfrage nach den Kernel-Modulen auch die richtige Ausgabe:
$ ls -1 /dev/{ashmem,binder}
/dev/ashmem
/dev/binder
snap installieren
Die Anbox-Leute stellen ihre Software offenbar nur als snap
-Package zur Verfügung - dieses Zeug aus der Ubuntu-Welt hab ich nicht freiwillig auf dem Rechner, es eignet sich hervorragend,
- durch riesige Pakete den Rechner total zuzumüllen (dann kann ich auch Windows verwenden)
- Nebenstrukturen aufzumachen abseits der systemseitigen Berechtigungsstrukturen
Für einen Test? Sei’s drum. Also ein Root-Terminal öffnen und:
root@{rechnername}:~# apt install snapd
Anbox installieren
Zunächst muß das Anbox-Paket installiert werden, ich habe mich hier für die akutellste Beta-Version entschieden:
{benutzername}@{rechnername}:~$ snap install --devmode --beta anbox
Warning: /snap/bin was not found in your $PATH. If you've not restarted your
session since you installed snapd, try doing that. Please see
https://forum.snapcraft.io/t/9469 for more details.
anbox (beta) 4-56c25f1 from Simon Fels (morphis) installed
Kleiner Test:
{benutzername}@{rechnername}:~$ snap list
Name Version Rev Tracking Publisher Notes
anbox 4-56c25f1 186 latest/beta morphis devmode
core 16-2.45.2 9665 latest/stable canonical✓ core
Neben dem snap
-core scheint das anbox
-Paket vorhanden zu sein, also mal aufrufen und die Version abfragen:
{benutzername}@{rechnername}:~$ /snap/bin/anbox version
anbox 4
Auf meinem Rechner muß ich den Pfad /snap/bin/
mitgeben, der Rechner hatte gemault, dieser Pfad wäre nicht in der $PATH
Variable enthalten. Das kann ich machen, wenn sich das Ganze als Dauerlösung herausstellen sollte …
Nun können Detailinfos abgefragt werden:
{benutzername}@{rechnername}:~$ snap info anbox
name: anbox
summary: Android in a Box
publisher: Simon Fels (morphis)
store-url: https://snapcraft.io/anbox
contact: https://anbox.io
license: unset
description: |
Runtime for Android applications which runs a full Android system
in a container using Linux namespaces (user, ipc, net, mount) to
separate the Android system fully from the host.
You can find further details in our documentation at
https://github.com/anbox/anbox/blob/master/README.md
commands:
- anbox
- anbox.android-settings
- anbox.appmgr
- anbox.collect-bug-info
- anbox.shell
services:
anbox.container-manager: simple, enabled, inactive
snap-id: Nr9K6UJaIOD8wHpDEQl16nabFFt9LLEQ
tracking: latest/beta
refresh-date: today at 04:53 CEST
channels:
latest/stable: –
latest/candidate: –
latest/beta: 4-56c25f1 2020-01-02 (186) 391MB devmode
latest/edge: 4-6a3f886 2020-03-27 (191) 391MB devmode
installed: 4-56c25f1 (186) 391MB devmode
Braucht also fast 400MB, diese Umgebung.
Eine Abfrage, ob soweit alles ok ist für den Betrieb des Emulators, sollte ergeben:
{benutzername}@{rechnername}:~$ /snap/bin/anbox check-features
Your computer does meet all requirements to run Anbox
außerdem wird noch ein Paket mit Tools gebraucht, um lokal gespeichterte Apps zu installieren:
root@{rechnername}:~# apt install android-tools-adb
Betrieb
Start des Application Managers
Den Kern von Anbox stellt der Application Manager dar, der sich wie folgt starten läßt:
{benutzername}@{rechnername}:~$ /snap/bin/anbox.appmgr
Hier kam mal eine Fehlermeldung, derzufolge der Application manager service is not running yet
, bei github konnte ich finden, daß dieser Befehl helfen sollte:
root@{rechnername}:~# systemctl start anbox-container-manager.service
was er dann auch tat, danach ließ sich der Applikation Manager starten:
Erste App installieren
Grds. verwende ich auch für Android bevorzugt Open-Source-Apps, hier ist F-Droid der Appstore der Wahl.
Dieser kann eingerichtet werden, indem der Installer .apk
von der Webseite heruntergeladen wird. Die Installation geschieht dann außerhalb des Application Managers, indem ein Terminal im Verzeichnis des heruntergeladenen .apk
-Files geöffnet und eingegeben wird:
{benutzername}@{rechnername}:~/Pfad/zum/apk-installer$ adb install F-Droid.apk
* daemon not running; starting now at tcp:5037
* daemon started successfully
Success
Und so sieht dann der Application Manager mit installiertem F-Droid aus:
(Unter dem Punkt Settings läßt sich die Sprache auf ‘deutsch’ ändern)
Wichtig: Wenn man auf diesem Weg manuell heruntergeladene Apps lokal installieren will, so muß der Application Manager gestartet sein und laufen, andernfalls erhält man diese Fehlermeldung:
error: no devices/emulators found
adb: error: failed to get feature set: no devices/emulators found
- waiting for device -
Weitere Apps hinzufügen oder entfernen
Ab hier gestaltet sich der Umgang mit diesem “Android in a Box” relativ unproblematisch, wenn auch ungewohnt: Apps öffnen jeweils eigene Fenster, z. B. F-Droid sieht so aus:
und über die Lupe rechts unten läßt sich die Suche aufrufen:
Der Rest ist die Standardprozedur: herunterladen und installieren - fertig.
Hinweis: In F-Droid ist auch eine App Aurora-Store enthalten, die einen anonymen Zugriff auf den Google-Play-Store ermöglicht (Interview mit dem Entwickler).
Will man nun eine App wieder “loswerden”, dann geht der einfachste Weg über den Einstellungen-Dialog:
Dieser läßt sich auch direkt mit ~$ /snap/bin/anbox.android-settings
starten. Dort im Unterpunkt Apps läßt sich eine Auflistung aller installierten Apps anzeigen:
Hier kann man die fragliche App dann antippen und im nächsten Schritt
findet man dann zwei Aktionen: deinstallieren oder beenden erzwingen.
Deinstallation
Wem diese “Box-Lösung” von Android nicht gefällt, der geht so vor:
Snap: Anbox entfernen
Dieser erste Schritt ist einfach:
{benutzername}@{rechnername}:~$ snap remove anbox
anbox entfernt
auf Betriebssystem-Ebene
-
snapd
entfernen
Bei der Installation vonsnapd
wird eine Abhängigkeit mit installiert:Die folgenden Pakete wurden installiert: snapd (2.37.4-1+b1) squashfs-tools (1:4.3-12)
Es sind also die beiden genannten Pakete mit dem distributionseigenen Paketmanager zu entfernen:
root@{rechnername}:~# apt purge snapd squashfs-tools
-
android-tools-adb
entfernen - auch dieses Paket schleppt eine Reihe Abhängigkeiten mit, die allesamt wieder entfernt werden müssen:Die folgenden NEUEN Pakete werden installiert: adb android-libadb android-libbase android-libboringssl android-libcrypto-utils android-libcutils android-liblog android-sdk-platform-tools-common android-tools-adb
und auch hier können diese Pakete in Debian mittels
apt purge
, gefolgt von der genannten Liste der Pakete, wieder entfernt werden.
weitere Artikel
- Ein eingesperrtes Android auf dem Desktop
- Android auf RockPi 4B - ein paar Praxiseindrücke
- Android installieren auf RockPi 4B
- Postbank mal wieder: Bestsign und die Abschaltung der chipTAN
- Die Postbank und sichere Transaktionen: Bestsign