[LINUX] Ich möchte Android-Apps auf Android entwickeln

Einführung

Ich weiß nicht, wie viele Leute Android-Apps auf Android entwickeln möchten, aber dieser Artikel zielt darauf ab, eine Umgebung für die Selbstentwicklung auf Android zu schaffen. Selbstentwicklung bezieht sich auf die Entwicklung einer Anwendung für Ihr eigenes Terminal auf Ihrem eigenen Terminal. Windows, Mac, Linux usw. können selbst entwickelt werden, aber zumindest Android hat keine offiziellen Entwicklungstools, deshalb wollte ich es ausprobieren, aber ich habe darüber nachgedacht, aber ich habe es gerade an einem guten Tag gebaut. (Obwohl ich die offizielle Linux-Version verwende ...) Da es gerade gebaut wurde, kann es einige Mängel in der tatsächlichen Entwicklung geben, aber bitte verzeihen Sie mir das. Wenn ich etwas finde, möchte ich nachforschen und eine Lösung schreiben. In diesem Artikel erstellen wir Android Studio bis zu dem Punkt, an dem es das Nötigste tut. → Beschrieben bis zum Start von Debugger.

Es ist besser, einen Stift zu haben, wenn Sie Android Studio verwenden, und es ist besser, als keinen 100-Yen-Shop zu haben. Da das Menü von Android Studio dünn ist, ist es schwierig, es mit einem kleinen Finger zu berühren, geschweige denn mit einem Daumen. Bitte kaufen Sie nicht die für Nintendo 3DS mit einer Plastikspitze. Das Touchpanel reagierte nicht ...

Vorbereitung (Ubuntu-Desktop-Umgebung)

Bereiten Sie die Ubuntu-Desktop-Umgebung im Voraus mit UserLAnd oder Termux vor. Wenn Sie es nicht erstellt haben, werden wir das Verfahren zum Erstellen der minimalen Desktop-Umgebung später beschreiben. Wenn Sie möchten, lesen Sie es bitte. Wahrscheinlich läuft Android Studio unter Termux schneller, aber die Schritte sind langwierig. Wenn Sie ein schnelles Gerät haben, ist UserLAnd möglicherweise eine gute Idee.

Ich empfehle Debian nicht, da es sich um ein JDK-Versionsproblem handelt und Android Studio nicht funktioniert, aber jeder, der es schafft, openjdk 8 zu erhalten, kann es möglicherweise zum Laufen bringen.

herunterladen

Laden Sie Android Studio, SDK-Tools, arm64-Version attp2 herunter. Der Download basiert auf der Annahme, dass er unter Windows ausgeführt wird, aber ich denke, dass dies auch unter Android möglich ist.

Laden Sie die Android Studio, SDK-Tools herunter

Gehen Sie zu Android Studio-Downloads, um die Linux-Version (64-Bit) des Android Studio-Pakets und die Linux-Version des SDK-Tools-Pakets herunterzuladen. ..

Zu meiner Zeit hatte ich android-studio-ide-191.6010548-linux.tar.gz und sdk-tools-linux-4333796.zip.

Später gibt es eine Stelle, an der der Befehl durch Angabe dieses Dateinamens ausgeführt wird. Wenn sich der Dateiname jedoch geändert hat, ersetzen Sie ihn durch Ihren eigenen heruntergeladenen Dateinamen und führen Sie den Befehl aus.

Die Android SDK-Tools (https://developer.android.com/studio/releases/sdk-tools?hl=ja) enthalten eine Reihe von Tools für die Entwicklung und das Debuggen. Android Studio funktioniert in Verbindung mit verschiedenen externen Tools, nicht nur für sich. Später werden wir ein anderes Befehlszeilen-Tool usw. mit einem Build-Tool namens Gradle herunterladen.

Laden Sie die Arm64-Version attp2 herunter

aapt2 ist ein Tool zum Generieren von APK-Dateien (Paketdateien von Anwendungen, die für die Installation unter Android verwendet werden). Die Arm64-CPU-Version wurde nicht offiziell veröffentlicht, aber ich bin dankbar, dass einige Leute sie auf Github veröffentlicht haben.

https://github.com/thejunkjon/android-tools/tree/master/build/android-9.0.0_r33/aapt2/arm64-v8a/bin

Gehen Sie zur obigen Site und klicken Sie auf die Schaltfläche Herunterladen, um die aapt2-Datei herunterzuladen.

Installation

Es wird mit einem geeigneten Dateiverwaltungstool von Android betrieben. Ich verwende eine Android-App namens X-plore, bin aber mit allem zufrieden, was mit Dateien funktionieren kann. Platzieren Sie die zuvor heruntergeladenen Android Studio, SDK-Tools an einem Ort, der für UserLAnd oder Termux Ubuntu sichtbar ist.

Für UserLAnd

Sehen Sie sich die Korrespondenztabelle unten an und installieren Sie sie an der gewünschten Position.

Ubuntu Android
/storage/internal/ (Hauptkörperseite)/sdcard/Android/data/tech.ula/files/storage/
/storage/sdcard/ (SD-Kartenseite)/storage/(Name der SD-Karte)/Android/data/tech.ula/files/storage/

Für Termux

Sehen Sie sich die Korrespondenztabelle unten an und installieren Sie sie an der gewünschten Position.

Ubuntu Android
/sdcard/ (Hauptkörperseite)/sdcard/
/storage/(Name der SD-Karte)/ (SD-Kartenseite)/storage/(Name der SD-Karte)/

JDK-Installation

Es wird eine Operation unter Ubuntu sein. Es ist noch nicht erforderlich, die Desktop-Umgebung zu starten. Wenn es also einfacher ist, nur die Shell zu starten, tun Sie dies bitte.

Installieren Sie openjdk 8. Beachten Sie, dass Termux ein Root-Konto ist, sodass Sie das erste Sudo nicht benötigen.


#Installieren Sie openjdk 8
sudo apt install -y openjdk-8-jdk

#Überprüfen Sie, ob openjdk 8 installiert ist
ls /usr/lib/jvm/java-8-openjdk-arm64

#Wenn Sie den Texteditor vim nicht installiert haben, installieren Sie ihn
sudo apt install -y vim

#Einstellungsdatei bearbeiten
sudo vim /etc/enviroment

Speichern Sie Folgendes in der Umgebungsdatei.


JAVA_HOME="/usr/lib/jvm/java-8-openjdk-arm64"

Wenn Sie nicht wissen, wie man vim bedient, müssen Sie sich nur an Folgendes erinnern.

Tastaturtasten Rolle
i Rufen Sie den Eingabemodus über den Befehlsmodus auf
ESC Verlassen Sie den Eingabemodus und kehren Sie in den Befehlsmodus zurück
:wq Speichern und schließen. Im Befehlsmodus arbeiten.

Reflektieren Sie nach dem Speichern die Umgebungseinstellungsdatei in Ihrer Umgebung.


source /etc/enviroment

Android Studio funktioniert nicht mit der Arm64-Version von openjdk 11. Wenn jemand 11 hat, wechseln Sie zu 8, wie im Bonusabschnitt unten beschrieben.

Umgebungseinstellungen


# .Beschreiben Sie die aapt2-Einstellungen in bashrc
cd
vim .bashrc

Schreiben Sie auch am Ende von .bashrc Folgendes und speichern Sie es.

export ANDROID_DATA=/data

Führen Sie die beschriebenen Einstellungen nur dieses Mal manuell aus. Ab dem nächsten Mal wird es automatisch ausgeführt, sodass die folgenden Vorgänge nicht erforderlich sind.


source .bashrc

Installieren Sie die Android SDK-Tools

Installieren Sie als Nächstes die Android SDK-Tools.


#Für UserLAnd
mkdir -p /home/(Meine ID)/Android/Sdk
cd (sdk-tools-linux-4333796.Verzeichnis mit Reißverschluss)
cp sdk-tools-linux-4333796.zip /home/(Meine ID)/Android/Sdk
cd /home/(Meine ID)/Android/Sdk/
unzip sdk-tools-linux-4333796.zip

#Für Termux
mkdir -p /root/Android/Sdk
cd (sdk-tools-linux-4333796.Verzeichnis mit Reißverschluss)
cp sdk-tools-linux-4333796.zip /root/Android/Sdk
cd /root/Android/Sdk
unzip sdk-tools-linux-4333796.zip

Im Fall von UserLAnd ändert sich das Verzeichnis für jede ID, aber die ID ist die ID, die registriert werden soll, wenn Ubuntu zum ersten Mal ausgewählt wird. Wahrscheinlich steht es auf der linken Seite der Eingabeaufforderung. Verwenden Sie also diesen Wert.

Installieren von Android Studio

Es ist endlich Zeit, Android Studio zu installieren.


# UserLAnd,Termux gemeinsam

cd (android-studio-ide-191.6010548-linux.tar.Verzeichnis mit gz)
cp android-studio-ide-191.6010548-linux.tar.gz /usr/local/
cd /usr/local/
tar -xvzf android-studio-ide-191.6010548-linux.tar.gz
cd /usr/local/android-studio/bin/
sudo chmod +x studio.sh

Das ist alles für die Installation von Android Studio selbst, aber Sie müssen einige der externen Tools später manuell erstellen und installieren.

Android Studio-Einstellungen

Von hier aus erfolgt der Vorgang in der Ubuntu-Desktop-Umgebung.

Bitte beachten Sie, dass Sie bei Verwendung von XSDL die Schriftgröße auf einen kleinen Wert einstellen (ich habe sie auf 0,5 eingestellt). Wenn Sie es groß einstellen, ist das Android Studio-Dialogfeld größer als der Bildschirm, und die Schaltflächen erstrecken sich über den Bildschirm hinaus und können nicht gedrückt werden. Selbst wenn die Auflösung niedrig ist, wird das Dialogfeld außerhalb des Bildschirms angezeigt, sodass anscheinend eine bestimmte Größe erforderlich ist. In meinem Fall ist es 1280x720.

Führen Sie studio.sh über die Befehlszeile aus, um Android Studio zu starten.

Starten Sie LXTerminal (Vogelmarkierung unten links auf dem Bildschirm → Systemprogramme → LXTerminal) und führen Sie den folgenden Befehl aus.


# UserLAnd,Termux gemeinsam

/usr/local/android-studio/bin/studio.sh

Ein Dialogfeld zum Importieren der Einstellungsdatei wird angezeigt. Wenn eine Einstellungsdatei vorhanden ist, geben Sie diese an und klicken Sie auf die Schaltfläche OK. Wenn nicht, drücken Sie einfach die OK-Taste.

Nachdem ein Begrüßungsfenster mit Android Studio (aus irgendeinem Grund niedriger) angezeigt wird, wird ein Dialogfeld angezeigt, in dem Sie aufgefordert werden, einige Daten an Google zu senden. Bitte wählen Sie Ihren Lieblingsknopf.

Das Begrüßungsdialogfeld wird angezeigt. Klicken Sie daher auf die Schaltfläche Weiter.

Das Dialogfeld Installationstyp wird angezeigt, aber ich habe nur Standard ausgewählt. Daher gehe ich davon aus, dass ich Satndard ausgewählt habe. Klicken Sie auf die Schaltfläche Weiter.

Das Dialogfeld "UI-Thema auswählen" wird angezeigt. Wählen Sie das gewünschte Design aus und klicken Sie auf "Weiter".

Das Dialogfeld "Sehr genaue Einstellungen" wird angezeigt. Klicken Sie daher auf die Schaltfläche "Weiter". Wenn hier eine Fehlermeldung angezeigt wird, ist das Installationsziel von SDK Tools falsch. Drücken Sie daher einmal auf die Schaltfläche Abbrechen, um Android Studio zu beenden, das Installationsziel zu korrigieren und Android Studio erneut zu starten. ..

Das Dialogfeld "Emulatoreinstellungen" wird angezeigt, es gibt jedoch nichts Besonderes zu tun. Klicken Sie daher auf die Schaltfläche "Fertig stellen".

Das Dialogfeld Komponenten herunterladen wird angezeigt, um die Komponenten herunterzuladen. Wenn der Download abgeschlossen ist, klicken Sie auf die Schaltfläche Fertig stellen. Das Herunterladen in meiner Umgebung dauerte ungefähr 10 Minuten.

Das Android Studio-Dialogfeld wird angezeigt. Klicken Sie auf Neues Android Studio-Projekt starten.

Das Dialogfeld Neues Projekt erstellen wird angezeigt. Wählen Sie das entsprechende Bedienfeld aus und klicken Sie auf die Schaltfläche Weiter.

Das Dialogfeld "Projekt konfigurieren" wird angezeigt. Stellen Sie daher die API-Ebene entsprechend der Android-Version Ihres Smartphones ein (das Menü auf dem Android-Einstellungsbildschirm ist für jedes Smartphone unterschiedlich. Überprüfen Sie daher, wie Sie die Android-Version selbst überprüfen können). Stellen Sie für andere einen geeigneten Wert ein und klicken Sie auf die Schaltfläche Fertig stellen. Hier ist es etwas hart, aber keine Panik, warten wir. Nach einer Weile sollte die IDE gestartet werden.

Wenn Sie die Wörter 2 Prozesse sehen, die ausgeführt werden ... in der unteren rechten Ecke, wird automatisch ein Build-Tool namens gradle heruntergeladen und erstellt.

Wenn gradle nicht mehr funktioniert, wählen Sie im Menü Datei → Projektstruktur, um das Dialogfeld Projektstruktur zu öffnen. Setzen Sie die JDK-Speicherorte im SDK-Speicherort auf JAVA_HOME und klicken Sie auf OK.

Der Build wird erneut gestartet. Warten Sie daher geduldig auf einen Fehler. Wenn der Build nicht gestartet wird, wählen Sie das Android Stdio-Menü Build → Projekt neu erstellen.

Hier verursacht das von gradle verwendete externe Werkzeug einen Fehler. Sie sollten Gradle Sync unten in Android Studio und eine Leiste rechts davon sehen. Bitte warten Sie, bis sich die Stange nicht mehr bewegt. Je nach Umgebung dauerte es mehr als 10 Minuten, als ich mich für UserLAnd entschieden habe.

Stellen Sie gradle so ein, dass es offline funktioniert. Wählen Sie im Menü Datei → Einstellungen, um das Dialogfeld Einstellungen zu öffnen. Wählen Sie Erstellen, Ausführen, Bereitstellen → Gradle aus, aktivieren Sie Offline-Arbeit in den globalen Gradle-Einstellungen und klicken Sie auf die Schaltfläche OK. Ich fragte mich, ob dieser Prozess verhindern könnte, dass die unten beschriebene JAR-Datei ersetzt wird, aber nach ein wenig Recherche konnte ich nicht sagen, ob der Austausch stattfinden würde. .. .. ← Anscheinend scheint es nicht ersetzt zu werden, auch wenn es online bleibt. Aber offline ist normalerweise schneller, also gehen wir offline. Gelegentlich (z. B. beim Ändern der Umgebung von LXDE zu Xfce) wird möglicherweise eine Fehlermeldung angezeigt, in der Sie aufgefordert werden, den Offline-Vorgang zum Zeitpunkt der Erstellung abzubrechen. Daher sollten Sie ihn zu diesem Zeitpunkt einmal abbrechen, erstellen und dann wieder offline gehen.

Erstellen einer JAR-Datei für aapt2

Ich habe früher einen Fehler erhalten, aber die Ursache ist ein Tool namens appt2. Die offizielle Version dieses Tools ist für Intel-CPUs und funktioniert nicht auf Smartphones mit Arm64-CPUs. Durch die Arm64-CPU-Version von aapt2 ersetzen.

Da aapt2 in der JAR-Datei enthalten ist, suchen Sie zuerst nach der JAR-Datei.

Wählen Sie die Vogelmarkierung unten links auf dem Bildschirm aus → Systemprogramme → Dateimanager PCManFM (im Folgenden als PCMan bezeichnet). Überprüfen Sie beim Start von PCMan das Menü Ansicht → Versteckt anzeigen. Bitte öffnen Sie den folgenden Ordner.

・ Für UserLAnd

/ home / (Benutzer-ID) /. gradle / caches / modules-2 / files-2.1 / com.android.tools.build / aapt2

・ Für Termux

/root/.gradle/caches/modules-2/files-2.1/com.android.tools.build/aapt2

Darunter sollte sich aapt2-x.x.x-xxxxxx-linux.jar befinden (wobei x die Versionsnummer ist). Suchen Sie also danach. Diejenigen mit Proto können diesmal ignoriert werden.

Kopieren Sie aapt2-x.x.x-xxxxxx-linux.jar irgendwo hin. Schreiben Sie die Dateinamenerweiterung von jar in zip um und entpacken Sie sie. Es sollte aapt2 enthalten, ersetzen Sie es also durch die erste heruntergeladene Arm64-CPU-Version von aapt2. Komprimieren Sie den Ordner META-INF, aapt2 und NOTICE in aapt2-x.x.x-xxxxxx-linux.zip. Schreiben Sie die Dateinamenerweiterung von zip in jar um. Überschreibt die JAR-Datei mit dem Speicherort der ersten JAR-Datei, die Sie finden.

In Android Studio erneut erstellen

Gehen Sie zurück zu Android Studio und wählen Sie im Menü Erstellen → Projekt neu erstellen. Überprüfen Sie, ob die Neuerstellung keine Fehler verursacht.

Wählen Sie dann im Menü Build → Bundle (s) / APK (s) → APK (s) erstellen, um eine APK-Datei (Paket zur Installation von Android-Anwendungen) zu erstellen. Die Informationen zum Erstellen von APKs werden in der unteren rechten Ecke angezeigt, und die Wortsuche wird in der Zeichenfolge angezeigt. Klicken Sie auf diese Zeichenfolge. Es ist erfolgreich, wenn der Ordner geöffnet und eine Datei mit der Erweiterung apk darin generiert wird.

Wenn Sie es versuchen möchten, übergeben Sie die APK-Datei an die Android-Seite und versuchen Sie die Installation. Wenn Sie erfahren, dass die Installation nicht analysiert werden kann, ist die Android-Version Ihres Smartphones möglicherweise älter als die in der APK-Datei angegebene Version. Erstellen Sie daher ein neues Projekt und verwenden Sie Ihr Smartphone. Bitte stimmen Sie mit dem SDK überein, das der Android-Version entspricht (Einstellung der Mindest-API-Ebene im Dialogfeld "Projektgenerierung").

Dies ist das Ende des Aufbaus der Entwicklungsumgebung. Es kann eine gute Idee sein, sich auch in Ihrer Freizeit leicht (?) Zu entwickeln.

Bonus

Lösung für diejenigen, die openjdk 11 installiert haben

Installieren Sie zunächst, wie oben erwähnt, openjdk 8.

Führen Sie dann den folgenden Befehl aus und java-8-openjdk-arm64 wird als Option angezeigt. Wählen Sie ihn daher nach Nummer aus.


sudo update-alternatives --config java

Geben Sie schließlich, wie oben erwähnt, / etc / environment ein und setzen Sie JAVA_HOME etc.

Fügen Sie Android Studio in das Desktop-Menü ein

Nach dem Start von Android Studio können Sie es in das Desktop-Menü eingeben, indem Sie im Menü Extras → Desktop-Eintrag erstellen ... auswählen. Klicken Sie beim nächsten Mal auf die Vogelmarkierung unten links für LXDE und auf die Markierung oben links für XFCE, um das Menü aufzurufen, und wählen Sie zum Starten Programmierung> Android Studio.

Referenzseite

Einführung in Java in Ubuntu 18.04 (erklärt den Unterschied zwischen JRE und JDK)

Recommended Posts

Ich möchte Android-Apps auf Android entwickeln
Ich möchte Android-Apps auf Android entwickeln (Debug)
Ich möchte Linux auf dem Mac verwenden
Ich möchte die Eingabe / Ausgabe von Dateien unter Linux protokollieren
Ich möchte ein beliebtes Paket auf PyPi finden
Ich möchte SUDOKU lösen
Ich möchte Lambda mit Python auf Mac AWS!
Ich möchte OpenJDK 11 mit Ubuntu Linux 18.04 LTS / 18.10 verwenden
Ich möchte Wake On LAN vollautomatisch ausführen
Ich möchte meine Abschlussarbeit über IPython Notebook ankündigen
Ich möchte Bilder kratzen und trainieren
Ich möchte ○○ mit Pandas machen
Ich möchte Yolos Anmerkung kopieren
Ich möchte vorerst die Desktop-Umgebung von Ubuntu auf Android verwenden (Termux-Version)
Ich möchte vorerst Ubuntus Desktop-Umgebung auf Android verwenden (UserLAnd-Version)
Ich möchte Shortcut-Übersetzungen wie die DeepL-App auch unter Linux verwenden
Ich habe gerade ein Skript geschrieben, um Android auf einem anderen Computer zu erstellen
Ich möchte Spyder an die Taskleiste anheften
Ich möchte Objekte mit OpenCV erkennen
Ich möchte kühl auf die Konsole ausgeben
Ich möchte in der Einschlussnotation drucken
Ich möchte sie alle zusammen kratzen.
Ich möchte mit dem Reim Teil1 umgehen
Ich möchte wissen, wie LINUX funktioniert!
Ich möchte einen Blog mit Jupyter Notebook schreiben
Ich möchte mit dem Reim part3 umgehen
Ich möchte ein Glas aus Python verwenden
Ich möchte eine Python-Umgebung erstellen
Ich möchte eine Pip-Installation mit PythonAnywhere durchführen
Ich möchte Protokolle mit Python analysieren
Ich war auf dotCloud süchtig nach Flask
Ich möchte mit aws mit Python spielen
Ich möchte IPython Qt Console verwenden
Ich möchte den Fortschrittsbalken anzeigen
Ich möchte ein Automatisierungsprogramm erstellen!
Ich möchte Matplotlib in PySimpleGUI einbetten
Ich möchte mit dem Reim part2 umgehen
Ich möchte, dass CAPTCHA HIWAI-Wörter sagt
Ich möchte mit dem Reim part5 umgehen
Ich möchte mit dem Reim part4 umgehen
Ich möchte Twitter mit Python twittern, bin aber süchtig danach
Ich möchte ein Bild auf Jupyter Notebook mit OpenCV (Mac) anzeigen.
Ich möchte Python-Code auf VS-Code nach meinen Wünschen formatieren und überprüfen
Ich möchte die Desktop-Umgebung von Ubuntu vorerst auch unter Android verwenden (Termux-Version - japanische Eingabe in der Desktop-Umgebung).
Ich möchte Matplotlib zu einem dunklen Thema machen
Ich möchte aus verschiedenen Sprachen eine Verbindung zu PostgreSQL herstellen
Ich möchte Dunnetts Test in Python machen
Ich möchte an eine Wiederholung denken können
Ich möchte einfach ein Rauschmodell erstellen
Ich möchte MATLAB feval mit Python verwenden
Ich möchte einen DataFrame in MSSQL einfügen
Ich möchte Python in der Umgebung von pyenv + pipenv unter Windows 10 verwenden
Ich möchte mit Python ein Fenster erstellen
Wie auch immer, ich möchte JSON-Daten einfach überprüfen
Ich möchte mit Python eine E-Mail von Google Mail senden.
Verwendung von Python Kivy ④ ~ Ausführung unter Android ~
[Python] Ich möchte 7DaysToDie von Discord aus verwalten! 1/3
Ich möchte eine Datei auf tkinter ablegen und ihren Pfad abrufen [Tkinter DnD2]