[PYTHON] Ich habe gerade ein Skript geschrieben, um Android auf einem anderen Computer zu erstellen

hinzufügen

2017-06-21 Es ist cooler, dies zu verwenden. gojuno / mainframer: Tool für Remote-Builds . Projekt mit Remote-Computer synchronisieren, Befehl ausführen, zurück synchronisieren . 2016-11-21 23:44 Unterstützt das Testen 2016-11-14 13:12 Hinzufügen der Ausführungsmethode in der Cloud

Dieser Artikel in 3 Zeilen

Android hat einen schweren Build. Da die CPU zu 100% ausgelastet ist, kann die Entwicklungsmaschine während dieser Zeit nicht verwendet werden. Bauen Sie auf einer anderen Maschine.

Problem

Langsam, langsam, Android Studio Build ist langsam. Wenn Sie vorerst mit dem Bauen beginnen, wird es so sein. Screen Shot 2016-11-03 at 23.52.31.png Das geht so lange so Screen Shot 2016-11-03 at 23.55.37.png Während dieser Zeit können Sie den Code nicht in Android Studio eingeben. Sie können nicht durchsuchen. Ich habe keine andere Wahl, als ein Buch zu lesen. Dank dessen hat sich der Messwert verringert. Aber der Liefertermin kommt.

Es kann nicht geholfen werden, dass der Build schwer ist. Ich habe keine andere Wahl, als es Google zu überlassen. Zumindest beim Bauen

Ich möchte diese Zeit alleine sichern. Anstatt den Build zu beschleunigen, habe ich mich darauf konzentriert, zu verhindern, dass die Entwicklungsmaschine während des Builds CPU-Ressourcen verbraucht.

Schwere Ursache

Verschiedene Dinge wie usw. überlappten sich und der Bau wurde von Tag zu Tag schwerer. Ich denke.

Gegenmaßnahme 1 Verwenden Sie das Android Studio Plugin von Freiwilligen

Erstellen mit Android Studio in der Cloud, um die Entwicklung zu beschleunigen - Unnyablog. Dieser beliebte Artikel wird es lösen! Ich habe es mit Android Studio 2.2 versucht, aber es hat nicht mehr funktioniert ... Kann ich 2.2 mit ein wenig Basteln verwenden? Ich dachte, aber ich verstand überhaupt nicht ...

Gegenmaßnahme 2 Stellen Sie sicher, dass die Entwicklungsmaschine nicht belegt ist, da sie nicht schneller sein muss.

Aber diesen Mechanismus müssen Sie mit Android Studio nicht erzwingen, Sie können die Shell verwenden. Ich dachte, es wäre in Ordnung, Python-Stoff zu verwenden, also habe ich es gemacht. Da es Geld kostet, habe ich mich für Mac Mini entschieden, weil ich einen Überschuss anstelle der Cloud hatte.

Führen Sie es auf Ihrem PC aus

Ich habe ein Drehbuch geschrieben! https://gist.github.com/shikajiro/90cdbdac652cf37a563840d812d73c5b

Laufen Sie in der Cloud

@sys1yagi Scheint es mit Googles Cloud GCE erstellt zu haben. Onome Erstellen einer Android-Anwendung mit einer Instanz der Google Compute Engine

Installation

  1. Legen Sie die obige Skriptdatei im Stammverzeichnis Ihres Projekts ab
  2. Legen Sie die IP-Adresse eines anderen zu erstellenden Computers fest.
  3. Legen Sie den Modulnamen, den Geschmacksnamen und den Debug-Status der zu erstellenden App fest.
  4. Erstellen Sie eine Umgebung, in der Sie auf einem anderen Computer aufbauen können 5-1. $ Fab build funktioniert wie ein normaler Build. Nach dem Kompilieren und Installieren wird die Aktivität gestartet. Sie können auch mit 5-2 testen. $ Fab test. Das Ergebnis wird im Browser angezeigt. Sie können auch "$ fab android_test", "$ fab test_all".

Skriptfluss

  1. Kopieren Sie den in der Entwicklung befindlichen Code auf einen anderen freien Computer.
  2. Bauen Sie auf einem anderen Computer auf.
  3. Bringen Sie die von einem anderen Computer erstellte apk mit und installieren Sie sie.
  4. Starten Sie die App.

Messergebnis

Ich habe die Zeit gemessen, die mehr als ein normaler Build benötigt.

Umgebung

Ort Linie Raumklima
Hausentwicklungsmaschine optische Linie Router-> wifi ->Maschine
Maschine im Büro optische Linie Router-> wifi ->Maschine

Ausführungszeit

Als nächstes habe ich versucht, mich mit LTE zu verbinden.

Umgebung

Ort Linie Raumklima
Cafe Entwicklungsmaschine LTE Android ->Anbinden->Maschine
Maschine im Büro optische Linie Router-> wifi ->Maschine

Ausführungszeit

Immerhin ist der Download von apk langsam. Wenn Sie Geschwindigkeit wollen, sollten Sie darauf verzichten. Aber es ist wirklich gut, den Akku nicht unterwegs zu benutzen! !!

Recommended Posts

Ich habe gerade ein Skript geschrieben, um Android auf einem anderen Computer zu erstellen
Ich habe ein Skript geschrieben, um ein WordPress-Plug-In hochzuladen
Ich habe ein Skript geschrieben, um eine beliebte Seite in Japan zu bekommen
Ich habe ein Skript geschrieben, mit dem Sie mit hoher Geschwindigkeit mit AtCoder beginnen können!
Ich habe eine Funktion zum Laden des Git-Erweiterungsskripts in Python geschrieben
Ich habe ein Skript geschrieben, um Webseiten-Links in Python zu extrahieren
Ich habe ein Skript geschrieben, um goodnotes5 und Anki bei der Zusammenarbeit zu unterstützen
Ich möchte eine Python-Umgebung erstellen
Ich habe ein Skript erstellt, um Piktogramme anzuzeigen
Ich möchte Android-Apps auf Android entwickeln
AtCoder-Autor Ich habe ein Skript geschrieben, das Wettbewerbe für jeden Autor zusammenfasst
[An die Herren auf Twitter] Ich habe ein Skript geschrieben, um .jpg-large sofort in .jpg zu konvertieren.
Ich habe versucht, eine Super-Resolution-Methode / ESPCN zu erstellen
Ich habe versucht, eine Super-Resolution-Methode / SRCNN build zu erstellen
Ich habe versucht, eine Super-Resolution-Methode / SRCNN build zu erstellen
Ich habe versucht, eine Super-Resolution-Methode / SRCNN build zu erstellen
Ich habe ein Skript geschrieben, um die Schluckuhr wiederzubeleben, die bald sterben wird
Erstellen Sie eine Python-Umgebung für maschinelles Lernen unter Mac OS
Ich möchte Android-Apps auf Android entwickeln (Debug)
Ich habe ein Skript erstellt, um ein Snippet in README.md einzufügen
Ich möchte ein beliebtes Paket auf PyPi finden
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Ich möchte einfach eine modellbasierte Entwicklungsumgebung erstellen
[Go + Gin] Ich habe versucht, eine Docker-Umgebung zu erstellen
Ich habe CPython eine Funktion hinzugefügt (Build & Structure Grasp)
So erstellen Sie eine Python-Umgebung unter Amazon Linux 2
Windows10 (x64) Erstellen Sie nativ eine maschinelle Lernumgebung
"Stoppen Sie das Festschreiben japanischer Dateien für Git auf Mac> <" Vorerst habe ich ein Skript geschrieben, um nach inkompatiblen japanischen Dateien unter Mac und Linux zu suchen.
Als ich versuchte, eine Rails-Umgebung auf WSL2 (Ubuntu 20.04LTS) zu erstellen, stolperte ich und fiel hin.
Ich habe ein Skript geschrieben, um mit AWS Lambda + Python 2.7 schnell eine Entwicklungsumgebung für Twitter Bot zu erstellen
Erstellen Sie mit macOS sierra eine Python-Lernumgebung für maschinelles Lernen
Erstellen Sie eine maschinelle Lernumgebung auf einem Mac (pyenv, deeplearning, opencv).
Ich habe schnell ein Programm geschrieben, um DI mit Python zu lernen
Ich habe versucht, das Python-Skript unter Windows 10 von 2.7.11 auf 3.6.0 zu ändern
Ich habe ein Skript geschrieben, das das Bild in zwei Teile teilt
Ich habe ein Drehbuch gemacht, um bei meinem Koshien Hallo zu sagen
Erstellen Sie eine maschinelle Lernumgebung
Veröffentlichen Sie das erstellte Shell-Skript, um die Probleme beim Erstellen von LiveUSB unter Linux zu verringern
Ich habe versucht, eine SATA-Software-RAID-Konfiguration zu erstellen, die das Betriebssystem unter Ubuntu Server startet
Ich habe versucht, eine Serverumgebung zu erstellen, die unter Windows 10 ausgeführt wird
Ich habe Taiga.IO auf CentOS7 installiert (ich habe ein Skript erstellt, als ich dort war)
Ein Hinweis, von dem ich süchtig war, als ich unter Linux einen Piepton machte
So erstellen Sie eine Python-Umgebung mit Virtualenv unter Ubuntu 18.04 LTS
Ich habe versucht, einen Sender auf der IoT-Plattform "Rimotte" zu registrieren.
Ich habe versucht, MySQL auf einer virtuellen Linux-Maschine unter OCI Compute zu installieren
So stellen Sie eine Django-App in nur 5 Minuten für Heroku bereit
Ich möchte einen maschinellen Lerndienst ohne Programmierung erstellen! Web-API
[AWS / Tello] Aufbau eines Systems zum Betrieb von Drohnen in der Cloud
Shellscript zum Erstellen einer Pyenv-Umgebung auf Ubuntu auf einmal
Ich habe ein POST-Skript erstellt, um ein Problem in Github zu erstellen und es im Projekt zu registrieren
Ich habe ein Buch geschrieben, in dem Sie maschinelle Lernimplementierungen und -algorithmen auf ausgewogene Weise lernen können.
Ich habe ein CUI-basiertes Übersetzungsskript erstellt (2)
Ich habe ein CUI-basiertes Übersetzungsskript erstellt
Erstellen Sie eine Python3-Umgebung unter CentOS7
Ich habe einen Code geschrieben, um die Quaternion mit Python in einen Ölerwinkel vom Typ z-y-x umzuwandeln
Ich wechselte meinen Job zu einem Ingenieur für maschinelles Lernen bei AtCoder Jobs
Versuchen Sie mit einem linearen Regressionsmodell auf Android [PyTorch Mobile] zu schließen
Eine Geschichte, die mich süchtig nach dem Versuch machte, LightFM unter Amazon Linux zu installieren