Earth Engine-Anwendungen

Einführung

Earth Engine-Apps sind dynamische, gemeinsam nutzbare Benutzeroberflächen für Earth Engine-Analysen. Mit Apps können Experten einfache UI-Elemente verwenden, um den Data Catalog und die Analyseleistung der Earth Engine zu nutzen. Diese Apps können sowohl von Experten als auch von Nicht-Experten verwendet werden.

In Earth Engine veröffentlichte Apps sind über die anwendungsspezifische URL zugänglich, die bei der Veröffentlichung generiert wird. Für die Anzeige oder Interaktion mit einer veröffentlichten App ist kein Earth Engine-Konto erforderlich. Apps, die von ihrem Ersteller als „Empfohlen“ ausgewählt wurden, sind auch in einer nutzerspezifischen App-Galerie verfügbar (z.B. USERNAME.users.earthengine.app).

App erstellen

Earth Engine-Apps können die meisten Funktionen des Code-Editors nutzen, mit einigen Ausnahmen. Außerdem haben wir die Benutzeroberfläche API speziell für App-Entwickler entwickelt. Wenn Sie die User Interface API noch nicht kennen, lesen Sie die Übersicht über die UI API.

App veröffentlichen

Wenn Sie eine App über den Code-Editor veröffentlichen möchten, laden Sie zuerst das Skript, das Sie in eine App umwandeln möchten. Öffnen Sie dann den Bereich „App-Verwaltung“, indem Sie im Code-Editor über dem Skriptbereich auf die Schaltfläche Apps klicken.

Button „Apps verwalten“
Schaltfläche „Apps verwalten“

Klicken Sie dann auf den Button NEUE APP.

App-Taste
Schaltfläche „Neue App“

Wählen Sie im Dialogfeld den Bearbeitungszugriff, einen App-Namen und ein Google Cloud-Projekt aus und geben Sie den Speicherort des Quellcodes der App an. Sie können den Zugriff auf diese App auf eine bestimmte Google-Gruppe beschränken oder sie über die Optionen auf dem Tab „Einschränkung“ öffentlich zugänglich machen. Für öffentlich zugängliche Apps können Sie auch ein benutzerdefiniertes Vorschaubild für die App sowie eine Beschreibung auf dem Tab „Galerie“ angeben. Klicken Sie auf „Diese App in Ihrer App-Galerie präsentieren“, wenn Sie möchten, dass diese App in Ihrer öffentlichen App-Galerie unter USERNAME.users.earthengine.app angezeigt wird. Optional können Sie ein benutzerdefiniertes Logo in der oberen linken Ecke der App einfügen, indem Sie auf dem Tab „Logo“ ein Bild Ihrer Wahl hochladen.

Bearbeitungszugriff auswählen
Bearbeitungszugriff auswählen: Wählen Sie aus, wer die App bearbeiten darf.
App veröffentlichen, Name und URL
App veröffentlichen: Wählen Sie einen Namen, eine App-ID und ein Cloud-Projekt aus.
App veröffentlichen, Quellcode
App veröffentlichen: App-Quellcode auswählen
App veröffentlichen, Veröffentlichungsdetails
App veröffentlichen: Optionen wie die Präsentation der App in Ihrer Galerie, Zugriffsbeschränkungen und ein benutzerdefiniertes Logo auswählen

Apps verwalten

Wenn Sie eine App über den Code-Editor verwalten möchten, öffnen Sie den Bereich „App-Verwaltung“, indem Sie im Code-Editor über dem Skriptbereich auf die Schaltfläche Apps klicken. Hier können Sie die Konfiguration Ihrer App aktualisieren oder die App löschen.

Apps verwalten
Apps verwalten

Mit anderen an Apps im Projektbesitz zusammenarbeiten

Standardmäßig können Apps, die Sie unter Ihrem Nutzernamen veröffentlichen, nur von Ihnen bearbeitet werden. Die Zusammenarbeit an Apps ist mit projektbezogenen Apps möglich. Projekt-Apps sind Apps, die einem Cloud-Projekt gehören und unter diesem veröffentlicht werden. Jeder mit der IAM-Rolle Earth Engine Apps Publisher kann Apps bearbeiten und löschen, die unter dem Cloud-Projekt veröffentlicht wurden. Weitere Informationen zu IAM-Rollen für die Earth Engine

Wenn Sie projektbezogene Apps aktivieren möchten, wählen Sie im Schritt „Bearbeitungszugriff auswählen“ die Option Cloud-Projekt und dann das gewünschte Cloud-Projekt aus. Schließen Sie dann den Vorgang zur App-Veröffentlichung wie gewohnt ab. Die App wird in der Domain PROJECT-ID.projects.earthengine.app veröffentlicht und kann von allen Nutzern bearbeitet werden, die die IAM-Rolle „Earth Engine Apps Publisher“ für das Cloud-Projekt haben.

Projekt-App veröffentlichen
Projektinterne App veröffentlichen

Wenn Sie Apps für ein Cloud-Projekt aufrufen möchten, klicken Sie auf den Button CLOUD-PROJEKT HINZUFÜGEN und wählen Sie das Cloud-Projekt aus.

Cloud-Projekt hinzufügen
Cloud-Projekt hinzufügen

Wenn Sie das Cloud-Projekt mit anderen teilen möchten, klicken Sie auf den Button PROJEKT FREIGEBEN. Dadurch gelangen Sie zur IAM-Seite der Cloud Console für das Projekt, auf der Sie Mitbearbeitern die IAM-Rolle „Earth Engine Apps Publisher“ zuweisen können.

Projektbezogene Apps aktivieren
Projektbezogene Apps bearbeiten und löschen

FAQ

Wie entferne ich eine App aus meiner App-Galerie?
Über das Kästchen „Diese App präsentieren“ auf der Seite „App-Konfiguration“ können Sie festlegen, ob eine App auf der Seite „Präsentierte Apps“ angezeigt wird. Apps mit eingeschränktem Zugriff können nicht präsentiert werden.
Ist mein Earth Engine-Code sichtbar?
Ja, für alle, die auf die App zugreifen können. Auch wenn es nicht sofort ersichtlich ist, wenn Ihre App veröffentlicht wird, ist es für jemanden ziemlich einfach, das JavaScript für Ihre App zu sehen, indem er den Netzwerkverkehr zu seinem Webbrowser beobachtet. In Chrome ist das JavaScript beispielsweise im Netzwerkbereich der Entwicklertools sichtbar.
Was sind mögliche Ursachen für den Fehler „Beim Laden von einigen Teilen der Karte ist ein Fehler aufgetreten“ bei einer veröffentlichten App?
Achten Sie darauf, dass alle in Ihrer App verwendeten Bild- oder Tabellen-Assets öffentlich oder mit der App geteilt werden. Wählen Sie im Dialogfeld zum Teilen von Assets die Option „Jeder kann lesen“ oder den App-Namen aus der Drop-down-Liste aus. Wenn Apps auf eine Google-Gruppe beschränkt sind, wird ein Asset nicht für die App sichtbar, wenn es für diese Google-Gruppe freigegeben wird. Stattdessen sollten die Assets für die App oder öffentlich freigegeben werden.
Warum wird die Seite „App ist noch nicht bereit“ angezeigt?
Nachdem eine App erstellt wurde, kann es einige Zeit dauern, bis die Informationen im System verteilt sind. Das Problem wird normalerweise innerhalb weniger Minuten behoben. Wenn der Fehler weiterhin auftritt, wenden Sie sich bitte an den Support.
Warum werden meine gezeichneten Geometrien in meiner App angezeigt?
So können Sie Referenzgeometrien in Ihrer App anzeigen und Apps erstellen, in denen Nutzer die Geometrien bearbeiten können. Wenn Sie nicht möchten, dass bestimmte Geometrien angezeigt oder bearbeitet werden, können Sie einzelne Geometrieebenen ausblenden oder sperren, damit Nutzer sie vor der Veröffentlichung Ihrer App nicht sehen oder bearbeiten können. Weitere Informationen finden Sie in der Dokumentation zu Geometrietools.
Was ist ein App-Kontingent?
Damit fehlerhafte oder ressourcenintensive Skripts die Verfügbarkeit des Dienstes nicht beeinträchtigen, gelten für die Earth Engine App-Nutzungskontingente für gleichzeitige Abfragen. Dieses Kontingent funktioniert ähnlich wie das nutzerbasierte Kontingent von Earth Engine, ist aber an die App und nicht an einen bestimmten Nutzer gebunden.
Hat jede von mir erstellte App ein eigenes Kontingent?
Ja, jeder App ist ein separates Kontingent zugeordnet. Bei älteren Apps, die mit einem API-Schlüssel erstellt wurden, ist das Kontingent an das Cloud-Projekt gebunden, aus dem Sie den API-Schlüssel einer App generieren. Wenn Sie mehrere API-Schlüssel aus demselben Cloud-Projekt generieren, gilt für alle dasselbe Nutzungskontingent.
Warum ist ein Cloud-Rechnungskonto erforderlich? Werden mir meine Apps in Rechnung gestellt?
Wir verwenden die Google Cloud Platform für eine Vielzahl von Aufgaben im Hintergrund. Für das Erstellen einer Earth Engine-App fallen keine Kosten an. Google Cloud Storage ist jedoch nicht kostenlos. Wenn Sie also die Ergebnisse Ihrer Analysen nach Google Cloud Storage exportieren, können dafür Gebühren anfallen.
Wie kann ich die Nutzung und das Kontingent meiner Apps besser nachvollziehen?

Wenn das Kontingent überschritten wird, gibt Earth Engine möglicherweise HTTP 429: Too Many Requests-Fehler zurück. Diese Fehler werden in der Regel von der Earth Engine-Clientbibliothek verarbeitet, die Anfragen in ein exponentielles Backoff einbindet und die Abfrage wiederholt, bis sie erfolgreich ist. Die Earth Engine-Clientbibliothek wiederholt die Anfrage fünfmal.

Wenn Ihre App so beliebt wird, dass viele Nutzer Fehler wegen Kontingentüberschreitung erhalten, wird ihnen eine Warnmeldung angezeigt und die Earth Engine muss möglicherweise den Zugriff auf die App (vorübergehend) einschränken.

Damit Sie keine 429-Fehler erhalten, können Sie das Caching für Ihre Anwendung aktivieren, z. B. indem Sie im Cache speicherbare aggregierte Statistiken als Earth Engine-Tabellen-Assets speichern, anstatt sie on the fly zu berechnen.