Earth Engine 應用程式

簡介

Earth Engine 應用程式提供 Earth Engine 分析的共用動態使用者介面。有了應用程式,專家就能透過簡單的 UI 元素,運用 Earth Engine 的 Data Catalog 和數據分析能力,供專家和非專家使用。

從 Earth Engine 發布的應用程式,可透過發布時產生的應用程式專屬網址存取。您不需要 Earth Engine 帳戶,就能查看已發布的應用程式或與其互動。如果創作者將應用程式設為精選,使用者也可以在專屬的應用程式庫 (例如 USERNAME.users.earthengine.app) 中找到該應用程式。

建構應用程式

Earth Engine 應用程式可使用程式碼編輯器中的大部分函式,但有少數例外。此外,我們在設計 User Interface API 時,也考量到應用程式開發人員的需求。如果您是第一次使用 User Interface API,請參閱 UI API 總覽。

發布應用程式

如要從程式碼編輯器發布應用程式,請先載入要製作成應用程式的指令碼,然後開啟應用程式管理面板。如要存取這個面板,請按一下程式碼編輯器中指令碼區段上方的「Apps」按鈕。

「管理應用程式」按鈕
「管理應用程式」按鈕

然後點選「新增應用程式」按鈕。

「新增應用程式」按鈕
「新增應用程式」按鈕

在對話方塊中,選擇編輯者權限、應用程式名稱、Google Cloud 雲端專案,並指定應用程式原始碼的位置。使用「限制」分頁下方的選項,將這個應用程式的存取權限制為特定 Google 群組,或保持公開存取。如果是可公開存取的應用程式,您也可以在「Gallery」分頁中提供自訂預覽圖片和說明。如果您希望這個應用程式顯示在 USERNAME.users.earthengine.app 的公開應用程式庫中,請按一下「在應用程式庫中精選這個應用程式」。您也可以在「標誌」分頁中上傳自選圖片,在應用程式左上角加入自訂標誌。

選擇編輯權限
選擇編輯權限:選擇可編輯應用程式的使用者。
發布應用程式、名稱和網址
發布應用程式:選擇名稱、應用程式 ID 和雲端專案。
發布應用程式、原始碼
發布應用程式:選取應用程式原始碼
發布應用程式、發布詳細資料
發布應用程式:選擇在圖片庫中顯示應用程式、存取限制和自訂標誌等選項

管理您的應用程式

如要透過程式碼編輯器管理應用程式,請按一下程式碼編輯器中指令碼區段上方的「Apps」按鈕,開啟「App Management」面板。您可以在這裡更新應用程式設定或刪除應用程式。

管理應用程式
管理應用程式

與他人協作專案擁有的應用程式

根據預設,只有您能編輯以您使用者名稱發布的應用程式。如要協作開發應用程式,請使用專案擁有的應用程式。專案擁有的應用程式是指在雲端專案下擁有及發布的應用程式;凡是具備 Earth Engine 應用程式發布者 IAM 角色的人,都可以編輯及刪除在雲端專案下發布的應用程式。進一步瞭解 Earth Engine IAM 角色。

如要啟用專案擁有的應用程式,請在「選擇編輯權限」步驟中選擇「雲端專案」選項,然後選取要使用的雲端專案,接著照常完成應用程式發布流程。應用程式將發布至網域 PROJECT-ID.projects.earthengine.app,凡是在雲端專案中具備 Earth Engine 應用程式發布者 IAM 角色的人員,皆可編輯應用程式。

發布專案擁有的應用程式
發布專案擁有的應用程式

如要查看 Cloud 專案的應用程式,請按下「新增 Cloud 專案」按鈕,然後選取 Cloud 專案。

新增雲端專案
新增雲端專案

如要與他人共用雲端專案,請按下「共用專案」按鈕。 系統會將您導向專案的 Cloud 控制台 IAM 頁面,您可以在該頁面將 Earth Engine 應用程式發布者 IAM 角色授予協作者。

開啟專案擁有的應用程式
編輯及刪除專案擁有的應用程式

常見問題

如何從應用程式庫中移除應用程式?
應用程式設定頁面上的「精選這個應用程式」核取方塊,可控制應用程式是否顯示在「精選應用程式」頁面上。存取權受限的應用程式無法設為精選。
我的 Earth Engine 程式碼是否會公開?
可以,只要能存取應用程式,任何人都能看到。雖然應用程式發布後,JavaScript 不會清楚顯示,但只要觀察網路瀏覽器的網路流量,就能輕鬆查看應用程式的 JavaScript。舉例來說,在 Chrome 中,您可以查看開發人員工具的 網路面板,找到 JavaScript。
已發布的應用程式出現「載入地圖中的某些部分時發生錯誤」訊息,可能原因為何?
請確認應用程式使用的所有圖片或表格資產,都已公開或與應用程式共用。在資產共用對話方塊中,選取「任何人都能讀取」選項,或從下拉式選單中選擇應用程式名稱。如果應用程式僅限 Google 群組使用,與該 Google 群組共用資產不會讓應用程式可查看該資產;資產應改為與應用程式共用或公開共用。
為什麼我會看到「應用程式尚未就緒」頁面?
應用程式建立後,可能需要一些時間,資訊才會在系統中傳播。通常幾分鐘內就會解決。如果錯誤持續發生,請尋求協助。
為什麼我繪製的幾何圖形會顯示在應用程式中?
這樣一來,您就能輕鬆在應用程式中顯示參考幾何圖形,並建立可讓使用者編輯幾何圖形的應用程式。如果不想顯示或編輯特定幾何圖形,可以隱藏或鎖定個別幾何圖形圖層,防止使用者在發布應用程式前查看或編輯。詳情請參閱 幾何圖形工具說明文件。
什麼是應用程式配額?
為避免錯誤或耗用大量資源的指令碼對服務可用性造成負面影響,Earth Engine 設有並行查詢的應用程式用量配額。這項配額的運作方式與 Earth Engine 的 每位使用者配額類似,但配額會與應用程式連結,而非特定使用者。
我建立的每個應用程式都有自己的配額嗎?
是,每個應用程式都有獨立的配額。如果是使用 API 金鑰建立的舊版應用程式,配額會與產生應用程式 API 金鑰的雲端專案連結。 如果您從同一個雲端專案產生多個 API 金鑰,這些金鑰會共用相同的使用配額。
為何需要 Cloud Billing 帳戶?我需要支付應用程式費用嗎?
我們使用 Google Cloud Platform 執行各種幕後工作。建立 Earth Engine 應用程式不需付費。不過,Google Cloud Storage 並非免費,因此如果您選擇將分析結果匯出至 Google Cloud Storage,可能需要支付相關費用。
如何進一步瞭解應用程式用量和配額?

如果超過配額,Earth Engine 可能會傳回 HTTP 429: Too Many Requests 錯誤。一般來說,這些錯誤會由 Earth Engine 用戶端程式庫處理,該程式庫會以指數輪詢方式包裝要求,並重試查詢,直到成功為止。Earth Engine 用戶端程式庫會重試要求五次。

如果應用程式太受歡迎,導致許多使用者收到超出配額的錯誤訊息,使用者會看到警告訊息,且 Earth Engine 可能必須 (暫時) 限制應用程式的存取權。

為避免收到 429 錯誤,建議您為應用程式啟用快取功能,例如將可快取的匯總統計資料儲存為 Earth Engine 資料表資產,而非即時計算。