網頁受管理設定

開發人員可能希望 ChromeOS Enterprise 管理員動態設定應用程式。受管理設定 API 提供強大的方式,讓管理員在安裝應用程式時管理應用程式的行為。您可以定義介面,讓管理員將設定傳遞至應用程式,並動態變更應用程式的行為,包括但不限於:

  • 在開啟時設定特定視窗大小。
  • 預先填入伺服器位址或驗證設定。
  • 啟用或停用應用程式功能。

設定 Web Managed Configuration API

如要使用受管理的設定,開發人員和企業管理員都必須完成相關步驟。開發人員必須實作 API 並發布介面。企業管理員必須透過管理控制台設定執行個體。我們將以設定不同登入選項為例,說明這些步驟。企業管理員可能會想允許部分使用者或機構單位以特定憑證登入,並停用其他憑證。

定義及分享可設定的介面

與任何其他類型的外部服務一樣,建議您先定義可與任何想設定應用程式的客戶共用的介面。受管理設定會將 JSON 字典傳送至應用程式,因此建議您為每個參數加上說明、類型、預設值和有效選項。以下是停用登入選項的參數範例:

                                                                                   
參數類型預設選項說明

DisableLoginOptions

String[]

[]

"email""google"

要停用的登入選項清單。

以這種方式記錄介面,有助於向外部團隊和客戶說明服務,並協助您長期維護服務。根據上述內容,企業管理員可以使用下列 JSON 停用 "email" 登入:

{
  “DisableLoginOptions: ["email"]
};

設定受管理的設定

企業管理員可透過 Google 管理控制台介面設定受管理設定。撰寫本文時,這個選項會顯示在所選應用程式的右側,位於「受管理的設定」**名稱下方。輸入值並儲存設定後,受管理的應用程式就能自動使用該值。

Google 管理控制台 UI,用於插入受管理設定欄位

Google 管理控制台 UI,用於插入受管理設定欄位

舉例來說,如要停用登入功能,企業管理員可以為根機構單位下的所有使用者設定應用程式 { "‘DisableLoginOptions’" : ["email"]}。儲存變更後,受管理應用程式就會自動取得該設定。

從應用程式擷取設定

定義介面並將設定傳送至應用程式後,您現在需要在應用程式內擷取設定。如要這麼做,請呼叫 Managed Configuration API:

navigator.managed.getManagedConfiguration(['DisableLoginOptions']).then(function (result) {
  // result = { "‘DisableLoginOptions’" : ["email"]}
  // hide email login option
});

getManagedConfiguration 是以 Promise 為基礎的函式,會將鍵接收為字串陣列,並以 JSON 物件的形式傳回結果。這是企業管理員在上一步輸入的值。

注意:如果您先前在程式碼中對 TextureView 使用轉換矩陣,在 Chromebook 等自然橫向的裝置上,預覽畫面可能無法正常顯示。可能是轉換矩陣錯誤地假設感應器方向為 90 或 270 度。如需解決方法,請參閱 GitHub 上的這個修訂版本,但我們強烈建議您遷移應用程式,改用本文所述方法。

然後使用結果變更應用程式的行為,讓管理員動態設定應用程式,並根據所有機構單位的需求調整應用程式。