佈建裝置

您可以透過多種方式佈建裝置,您客戶的商家 需求會決定您要使用的佈建方式。

裝置佈建基本概念

客戶想採用的裝置佈建部署情境 支援 (例如自攜裝置或公司擁有) 會決定您要執行的作業模式 用途,例如裝置擁有者模式或設定檔擁有者模式。同樣地, 需要支援各項佈建作業所需的作業和 Android 版本 實際執行的方法

部署情境

公司擁有的部署情境中,企業擁有並 完全掌控員工使用的裝置。機構通常會部署 公司擁有的裝置需要嚴格監控及管理整個 裝置。

支援自攜裝置部署情境的公司,能讓您 員工可將個人自有裝置用於工作,並讓他們能 存取公司特殊資訊和應用程式。

運作模式

裝置擁有者模式支援公司擁有的部署作業 作業。在 Android 中,管理應用程式稱為裝置政策 控制器 (DPC)。DPC 會在 Android 裝置上強制執行政策 因為當裝置為裝置擁有者時,就會管理整部裝置。以裝置擁有者的身分 DPC 可以執行裝置通用的操作,例如設定整部裝置 連線、調整通用設定,以及恢復原廠設定。

設定檔擁有者模式支援 BYOD 部署模式, 作業。透過裝置政策控制器 (DPC),企業得以將個人裝置用於工作 ,將工作資料夾新增至裝置的主要使用者帳戶。工作 設定檔會與主要使用者相關聯,但為另一個設定檔。阿斯 個人資料擁有者,DPC 只能管理裝置上的工作資料夾,並將 只有工作資料夾才能進行部分控管

裝置擁有者佈建方法

您必須在初始設定期間佈建裝置擁有者的作業模式 或在新裝置恢復原廠設定後登入。無法佈建裝置擁有者模式 隨時下載您的應用程式

視用途而定,佈建方法主要分為 2 種 佈建裝置擁有者模式

  • 裝置導向流程中,IT 管理員可使用 NFC 佈建大型作業 藉此指定裝置的數量 這個流程適用於 Google Play 管理版帳戶或 Google Workspace 情境
  • 在「使用者驅動」流程中,選項會因機構狀態而有所不同 使用了 Google Workspace
    • 在 Google Workspace 情境中,使用者新增了 Google 帳戶 且裝置政策控制器 (DPC) 必須引導使用者 設定裝置擁有者的步驟。以使用者為準的流程可協助使用者 安裝新裝置,也可在裝置不支援 NFC 時替代方案。
    • 如果機構未使用 Google Workspace,您應該使用 Google Play 管理版帳戶方法。

注意:如果您的應用程式只在特定國家/地區發行, Google Play、 佈建裝置擁有者時,系統會忽略這些限制。 即使裝置不在指定國家/地區,系統仍會下載 DPC。

設定檔擁有者佈建方法

如要佈建設定檔擁有者作業模式,建議採用的方法取決於 以瞭解機構是否使用 Google Workspace

  • 在 Google Workspace 的情況下,建議採用的方法 使用者導向流程,也就是使用者新增 Google 帳戶。 DPC 會引導使用者逐步設定個人資料擁有者。
  • 如果機構未使用 Google Workspace,我們會採用以下建議做法: Google Play 管理版帳戶方法。

一種是傳統做法,也就是在 此外,系統也支援手動安裝裝置政策控制器 (DPC)。 系統會根據使用者從 Google Play 下載 DPC,並安裝 接著,DPC 會引導使用者完成其餘的設定程序 個人資料擁有者

Android 各版本之間的金鑰佈建差異

部署情境 作業模式 佈建方法 5.0、5.1 6.0 以上版本 7.0 以上版本
由公司擁有 裝置擁有者 QR 圖碼
Google Play 管理版帳戶
Google 帳戶
NFC
自攜裝置 設定檔擁有者 Google Play 管理版帳戶
Google 帳戶 5.11
手動安裝裝置政策控制器 (DPC)

一般導入註意事項

進行下列操作時,請留意以下事項 寫入 DPC, 無論您實作的作業模式為何

Google Play 服務相容性

Google Play 服務 APK 指南 指示開發人員執行 Google Play 服務版本檢查 以及執行 API 交易因為嘗試更新 Google Play 服務 會導致裝置設定程序嚴重中斷,DPC 不得

DPC 與 Google Play 服務相容性的重點如下:

  • 執行 DPC 時,必須使用 特定裝置。
  • DPC 不應仰賴日後的 Google Play 版本推出的新功能 部分服務。

裝置佈建完成後,DPC 可以提示使用者更新 讓裝置政策控制器 (DPC) 使用最新功能。不過, 以及裝置隨附的版本

擷取裝置詳細資料

由於傳播延遲,您最多可能需要 2 分鐘才會接到 新註冊的裝置 device.get 會傳回裝置的詳細資料。

如果工作流程需要詳細資料,使用者才能使用裝置或 工作資料夾,建議您先使用 DPC 的進度畫面,等到 呼叫成功。

設定檔擁有者模式的導入註意事項

進行下列操作時,請留意以下事項 編寫 DPC 以實作個人資料擁有者 作業模式。

移除或停用個人 DPC

佈建設定檔擁有者作業模式時,DPC 會開始執行 並開始建立工作資料夾的程序。 工作資料夾建立完成後,DPC 也會在工作中運作 工作資料夾中的 DPC 會完成佈建程序。在 否則,個人資料夾中的 DPC 應自行停用或裝置 使用者應予以移除。

使用者移除個人 DPC

  1. 個人裝置政策控制器 (DPC) 會使用 ACTION_MANAGED_PROFILE_PROVISIONED。 (若是 Android 5.1 裝置,則應改為監聽個人裝置政策控制器 (DPC) ACTION_MANAGED_PROFILE_ADDED)。
  2. 個人裝置政策控制器 (DPC) 提出解除安裝要求 ACTION_UNINSTALL_PACKAGE。 這會提示使用者解除安裝個人 DPC。有助最佳使用者 解除安裝程序應在佈建流程中執行。

個人 DPC 自行停用

  1. 個人裝置政策控制器 (DPC) 會使用 ACTION_MANAGED_PROFILE_PROVISIONED。 (若是 Android 5.1 裝置,則應改為監聽個人裝置政策控制器 (DPC) ACTION_MANAGED_PROFILE_ADDED)。
  2. 在適用情況下,個人裝置政策控制器 (DPC) 應釋出裝置管理員權限 再予以停用
  3. 個人 DPC 會發起 setApplicationEnabledSetting敬上 並使用 COMPONENT_ENABLED_STATE_DISABLED。 參數。
  4. 使用者可以在 Google Play 重新啟用個人 DPC。

裝置擁有者模式的實作注意事項

編寫裝置政策控制器 (DPC) 時,請注意下列事項 來實作裝置擁有者作業模式。

裝置必須是新裝置或恢復原廠設定

您必須在初始設定期間佈建裝置擁有者的作業模式 或在新裝置恢復原廠設定後登入。無法選取裝置擁有者模式 隨時佈建

裝置擁有者模式可讓 DPC 全面控管裝置。佈建 裝置完成初始設定「之後」的裝置擁有者模式:

  • 惡意軟體可能會建立裝置擁有者並接收裝置。
  • 如果裝置上已有部分使用者資料或應用程式,就可能發生隱私權問題 裝置。

僅在公司擁有的裝置上設定裝置擁有者模式

請務必只在經確認的裝置上佈建裝置擁有者模式 擁有權屬於客戶公司若要驗證,可以偵測 專屬裝置識別碼 (例如序號),或是使用專屬的 授權透過您的 EMM 註冊裝置的帳戶組合 政策。

如果您無法驗證裝置的公司擁有權,就必須建立故障安全機制 機制,確保不會誤佈建裝置擁有者模式。例如: 您可以提示裝置使用者進行確認,或採取一些確認動作 才能佈建裝置擁有者模式

啟用系統應用程式

在 DPC 佈建工作資料夾後,任何不含啟動器圖示的系統應用程式 其對裝置至關重要,並會自動獲準執行 。附有啟動器圖示的系統應用程式 選用,可決定是否要啟用。

透過 Google Play 啟用系統應用程式

透過 Google Play 啟用系統應用程式 ,而且只要有應用程式更新,使用者就能即時收到更新。

使用 Android 架構 API 啟用系統應用程式

如果您希望使用者開始使用裝置時能立即看到系統應用程式, 在裝置佈建程序中啟用系統應用程式。裝置政策控制器 (DPC) 可啟用 系統應用程式 DevicePolicyManager.enableSystemApp()

您可以透過以下幾種方式辨別要啟用及分享的系統應用程式 提供給 IT 管理員使用。

建立系統應用程式目錄

使用這個方法時,每部裝置都會決定裝置搭載的應用程式,並傳送 將資料傳回 EMM 控制台EMM 控制台會以動態方式顯示這項資訊 IT 管理員 產生一組標籤

  1. 如果裝置上尚未佈建工作資料夾,請 裝置上所有帶有啟動器圖示的應用程式 queryIntentActivities():

    private List<ResolveInfo> getAppsWithLauncher() {
      Intent i = new Intent(Intent.ACTION_MAIN);
      i.addCategory(Intent.CATEGORY_LAUNCHER);
      return getPackageManager().queryIntentActivities(i, 0);
    }
    
  2. 如果裝置上已佈建工作資料夾,請從裝置清單中 工作資料夾中的所有應用程式: PackageManager.GET_DISABLED_COMPONENTS敬上 和 PackageManager.GET_UNINSTALLED_PACKAGES

  3. 在應用程式清單中找出系統應用程式,方法是勾選 FLAG_SYSTEM、 指出應用程式是否已安裝在裝置的系統映像檔中。

優點:

  • 讓 IT 管理員全面掌握所有裝置中的應用程式。
  • 可讓您精細控管要啟用的應用程式。

缺點:

  • 每部裝置的應用程式目錄不盡相同,因此很難套用模型 將單一政策設定套用至多種裝置類型。
  • 如果想展示 OEM 專用的應用程式數量, 對 IT 管理員提供有意義的資訊

依功能分類系統應用程式

如果 IT 管理員想為一組裝置啟用系統應用程式, 根據功能選擇通用應用程式例如「System」 瀏覽器」錯誤訊息。接著,DPC 會允許使用該意圖的所有系統應用程式。

優點:

  • 提供 IT 管理員所需的簡單功能。
  • 確保各類裝置的功能一致 (至少 常見用途)。

缺點:

  • 限制系統應用程式僅適用於所有裝置類型都支援的應用程式。
  • IT 管理員可能會想推送單一原始設備製造商 (OEM) 版本的應用程式 (例如 Samsung® 瀏覽器),但不是其他瀏覽器 (例如 LG® 瀏覽器)。
  • IT 管理員可能不想推送多個應用程式,但無法 尤其是在有多個意圖處理常式的情況下

僅支援核准的系統應用程式

你與原始設備製造商 (OEM) 合作,指明特定 OEM 套件並僅支援這些套件 安裝的其他套件。這麼做也可讓您將 有些是原始設備製造商 (OEM) 應用程式的設定 如果兩者互不相關 OEM 應用程式並非由 Google Play 代管,

優點:

  • 大幅簡化整合工作流程,除去極端情況 無法解決前兩個選項的問題
  • 您可以為原始設備製造商 (OEM) 應用程式的受管理設定分類,並以目錄的方式呈現 。
  • 促進與原始設備製造商 (OEM) 的緊密關係,支援旗艦裝置。

缺點:

  • 擴充性較低,導致消費者選擇減少。

測試 DPC 的情境

Test DPC 是開放原始碼的開放原始碼工具 提供的應用程式,以便測試 DPC 應用程式中的企業功能。 測試 DPC 的來源 githubGoogle Play。 測試 DPC 的用途:

  • 模擬 Android 中的功能
  • 設定及強制執行政策
  • 設定應用程式和意圖限制
  • 設定工作資料夾
  • 設定全代管 Android 裝置

測試 DPC 主要是用來測試企業 您也可以使用 Android 解決方案做為 Android 的 程式碼範例 接著介紹網際網路通訊層 包括兩項主要的安全防護功能

自訂佈建作業

在裝置佈建期間,系統使用者介面會在 狀態列和預設標誌。設定自訂色彩 並在 DPC 和標誌之間 系統介面,或允許管理員使用您的 EMM 控制台進行。例如: 管理員可能會上傳公司標誌,或自訂 通知。

DPC 會使用 DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR敬上 和 DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI。 額外項目。

如要設定自訂顏色,請使用 EXTRA_PROVISIONING_MAIN_COLOR敬上 即可設定整數,代表裝置顯示的主要顏色 佈建工作將額外 (常數) 置於意圖中: ACTION_PROVISION_MANAGED_PROFILE敬上 或 ACTION_PROVISION_MANAGED_DEVICE

如要瞭解整數的表示方式,請參閱 顏色。 如需範例,請參閱 MAIN_COLOR敬上 。

如要設定自訂標誌,請使用 EXTRA_PROVISIONING_LOGO_URI敬上 設定在裝置使用期間顯示在畫面頂端的圖片 佈建工作將額外 (常數) 置於意圖中: ACTION_PROVISION_MANAGED_PROFILE敬上 或 ACTION_PROVISION_MANAGED_DEVICE。 確認圖片的像素密度適合裝置。

如需範例,請參閱 LOGO_URI敬上 。

QR code 方法

QR code 佈建方法可透過以下方式設定及設定裝置擁有者模式: 掃描設定精靈中的 QR code。QR code 內含 鍵/值組合,以及佈建 DPC 所需的所有資訊 裝置。

您的 EMM 控制台應讓 IT 管理員建立 QR code 供要佈建的裝置使用IT 管理員傳送 QR code 而使用者只要掃描 使用手機掃描 QR code

QR code 佈建用途

部分裝置 (例如平板電腦) 不支援 NFC。QR code 佈建是指 即使是不支援的分散式裝置,也能輕鬆佈建 NFC。IT 管理員可以傳送 QR code 給使用者, 佈建工作

不需使用 Google 身分 (例如 Google 網域) 即可佈建 QR code 或 Google 帳戶。使用 Android 但未採用 Google 服務的機構 Workspace,沒有 Google 身分。

QR code 佈建功能與 NFC 一樣,可讓您以資訊站和單一用途部署應用程式, 不需要也不需要 Google 身分 (或任何身分)。舉例來說 商店中的資訊站裝置無人擁有,且不應具有使用者 識別個人身分

建立 QR code

QR code 佈建的有效 QR code 是 UTF-8 編碼的 JavaScript® 物件 標記 (JSON) 字串。您可以在有效的 QR code 中加入下列屬性:

一律必要

如果裝置尚未安裝裝置政策控制器 (DPC) 即可

如果裝置未連上 Wi-Fi,則建議使用

選用

這個範例會建立有效的 QR code:

{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":
"com.emm.android/com.emm.android.DeviceAdminReceiver",

"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":
"gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w=",

"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION":
"https://path.to/dpc.apk",
    "android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
    "android.app.extra.PROVISIONING_WIFI_SSID": "GuestNetwork",
    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {
        "dpc_company_name": "Acme Inc.",
        "emm_server_url": "https://server.emm.biz:8787",
        "another_custom_dpc_key": "dpc_custom_value"
    }
}

QR code 佈建程序

  1. 設定精靈會提示使用者輕觸歡迎畫面 6 次。 而且需要在畫面上的同一個位置進行。
  2. 設定精靈會提示使用者連線至網際網路,以便進行設定 精靈可下載 QR code 讀取器。
  3. Google Play 服務會下載包含 QR code 辨識的模組 。
  4. 使用者掃描 IT 管理員提供的 QR code。
  5. 設定精靈會下載您的 DPC 應用程式並啟動裝置擁有者 執行佈建程序 ACTION_PROVISION_MANAGED_DEVICE

Google Play 管理版帳戶方法

裝置政策控制器 (DPC) 可以使用 Google Play 管理版帳戶佈建方法進行設定 裝置擁有者模式或設定檔擁有者模式已指定這個佈建方式 未使用 Google Workspace 的機構中

Google Play 管理版帳戶佈建方法會使用 DPC 支援資料庫。 這個用戶端程式庫可確保 Google Play 管理版順暢運作 。還能與日後受管理的代管更新相容 Google Play 帳戶佈建程序。

佈建裝置的先決條件

  • 使用 EMM 身分和 ESA 建立並註冊企業 ID 並按照 建立並註冊企業
  • 使用者可透過您的 EMM 控制台得知使用者的公司身分。
  • 使用者可透過 EMM 接受的憑證登入 DPC 應用程式 控制台,通常是公司電子郵件憑證。

設定個人資料擁有者模式

您可以在 做為個人裝置使用

  1. 使用者從 Google Play 手動下載並啟動裝置政策控制器 (DPC)。
  2. DPC 會使用 ACTION_PROVISION_MANAGED_PROFILE
  3. 完成最終設定步驟

設定裝置擁有者模式

您必須在應用程式的初始設定期間佈建裝置擁有者的作業模式 。無法佈建裝置擁有者模式 隨時連線

在裝置設定期間,使用者需要輸入特殊的裝置政策控制器 (DPC) 專屬權杖 系統會提示您新增帳戶。符記的格式為 afw#DPC_IDENTIFIER。適用對象 名為 ACME 的 EMM,afw#acme 會安裝 ACME EMM 的預設 DPC。 每個 EMM 都必須向 Google 申請特定的裝置政策控制器 (DPC ID) 才能使用 佈建程序

  1. 使用者開啟新裝置或恢復原廠設定的裝置,並使用設定精靈 發布內容。
  2. 收到新增帳戶的提示時,使用者需在 格式 afw#DPC_IDENTIFIER,用於識別 EMM 的裝置政策控制器 (DPC)。
  3. 在權杖中使用 DPC ID,設定精靈會新增一個 複製到裝置的 Google 帳戶。這個臨時帳戶僅用於下載 並已從 Google Play 移除 EMM 的 EMM。 最後的設定步驟
  4. DPC 會透過 ACTION_PROVISION_MANAGED_DEVICE
  5. 完成最終設定步驟

所有作業模式的最終設定步驟

請僅在設定初始步驟「之後」執行這些步驟 設定檔擁有者模式或裝置擁有者模式完成。

  1. DPC 會確保該裝置支援 Google Play 管理版帳戶 初始化 DPC 支援資料庫:

    AndroidForWorkAccountSupport androidForWorkAccountSupport =
      new AndroidForWorkAccountSupport(context, admin);
    androidForWorkAccountSupport.ensureWorkingEnvironment(callback);
    

    如果您要在裝置上設定裝置擁有者模式,這個步驟會移除 為下載 DPC 而新增的臨時 Google 帳戶。

  2. 使用者是使用 EMM 憑證登入裝置政策控制器 (DPC)。這些 前者通常使用公司電子郵件憑證

  3. DPC 為 已驗證的公司使用者。

  4. 如果 EMM 控制台沒有使用者的 Google Play userId, 建立新的使用者: Users.insert()。 如果您正在佈建裝置擁有者模式,請指定裝置帳戶 (針對 裝置部署專用裝置) 或使用者帳戶 (用於公司擁有的部署作業)。

  5. 撥打電話來設定裝置政策 Devices.update。 請先設定這項政策,再將 Google Play 管理版帳戶新增至 否則,這項政策在短期內不會 。

  6. EMM 控制台會透過下列方式要求 userId 的帳戶憑證: 撥號中 Users.generateAuthenticationToken()。 這個驗證權杖效期有限,無法重複使用。裝置政策控制器 (DPC) 應 使用權杖透過程式輔助方式新增帳戶 (此權杖結尾不是 使用者)。

  7. Google Play EMM API 會將驗證權杖傳回 EMM 控制台。

  8. EMM 控制台會將驗證權杖轉送至 DPC。

  9. 裝置政策控制器 (DPC) 會使用

    androidForWorkAccountSupport.addAndroidForWorkAccount(token,
      accountAddedCallback);
    

Google 帳戶方法

DPC 可以使用 Google 帳戶佈建方法設定裝置擁有者 模式或設定檔擁有者模式使用 Google 帳戶佈建方法時 DPC 會在使用者新增其後,引導使用者完成佈建步驟 在初始裝置設定期間使用 Google 帳戶。

當使用者輸入自己的 Google 帳戶憑證時:

  • Google 驗證伺服器會驗證使用者帳戶。
  • 接著,驗證伺服器會與企業伺服器通訊, 帳戶的網域註冊為 Google Workspace 網域 由 EMM 管理的網域。
  • 如果是的話,系統會自動下載與網域相關的裝置政策控制器 (DPC) 並從 Google Play 安裝您的應用程式

設定個人資料擁有者模式

在設定應用程式的初始設定期間,您可以佈建商家檔案擁有者的作業模式 使用者透過 [設定] > [設定 >新增帳戶

  1. 透過設定精靈或 [設定]設定 > 啟動帳戶驗證新增帳戶
  2. GMSCore 使用ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE啟動工作資料夾佈建作業。
  3. 裝置會自動下載 DPC,並使用 ACTION_GET_PROVISIONING_MODE 啟動 處理常式,確認 DPC 支援工作資料夾佈建功能。
  4. 平台會執行工作資料夾佈建作業,
  5. 佈建工作資料夾後,DPC 就會收到廣播訊息 ACTION_PROFILE_PROVISIONING_COMPLETE。 裝置政策控制器 (DPC) 的 ACTION_ADMIN_POLICY_COMPLIANCE 處理常式啟動。工作資料夾建立完成後 DPC 也會在工作資料夾內執行。DPC 推動 確保裝置未遭駭 驗證是否已強制執行政策,例如要求 密碼)。
  6. 個人資料夾中的 DPC 會自行停用或使用者移除

設定裝置擁有者模式或 COPE

您必須在應用程式的初始設定期間佈建裝置擁有者的作業模式 。裝置擁有者模式無法新增至 。

  1. 帳戶驗證是由設定精靈的使用者啟動。
  2. GMSCore 使用 ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE 啟動裝置擁有者佈建程序。 3. DPC 會自動下載到裝置,並使用 GET_PROVISIONING_MODE 處理常式啟動,以選取需要的佈建模式。
  3. 平台會將裝置佈建至所需佈建模式。
  4. 裝置佈建完成後,DPC 會收到下列廣播訊息,並啟動裝置政策控制器 (DPC) 的 ACTION_ADMIN_POLICY_COMPLIANCE 處理常式:
  5. DPC 使用 Global.DEVICE_PROVISIONED 的值 ,驗證裝置是否為全新或已恢復原廠設定 (已取消佈建):
    • 0 已取消佈建。
    • 1 已佈建。
  6. DPC 會透過推送相關政策,完成佈建程序 確保裝置未處於遭駭狀態,並且 驗證是否強制執行政策 (例如需要密碼)。

Google 帳戶方法的導入註意事項

  • DPC 應留意 而所用啟動意圖的特定額外項目 (請參閱 LaunchIntentUtil):

    • android.accounts.Account 類型的帳戶 表示 帳戶透過設定精靈或 [設定] > [設定]> 新增帳戶。新增帳戶 而必須使用已啟動的 DPC 來管理裝置或設定檔。
    • 布林值類型的 is_setup_wizard如果設為 true,DPC 就會在 安裝設定精靈,否則 設定 >新增帳戶或其他流程。

    檢查是否已在 Google 帳戶方法中啟動 DPC 為:

    boolean isSynchronousAuthLaunch(Intent launchIntent) {
      return launchIntent.hasExtra("is_setup_wizard");
    }
    
  • 裝置政策控制器 (DPC) 不得呼叫 finish() 以備不時之需此外,這應該也會傳回正值結果代碼 (例如 RESULT_OK) 透過 DPC 啟動 startActivityForResult() 然後等待結果

    DPC 應等到佈建程序傳回結果代碼之前, 呼叫 finish(),如果裝置政策控制器 (DPC) 設定流程達到傳送 ACTION_PROVISION_* 意圖。使用 startActivityForResult()敬上 和 onActivityResult() ACTION_PROVISION_*意圖時的回呼。(詳情請參閱 LaunchActivity敬上 和 SetupSyncAuthManagement 範例)。

    由於設定程序可能具有非同步性質,因此 DPC 無法依賴 RESULT_OK 的結果代碼表示佈建中 成功。唯一的保證方法就是 DeviceAdminReceiver敬上 。RESULT_CANCELED 表示使用者 同步程序中的備份,而 DPC 應根據 。

    在此範例中,DPC 會啟動佈建作業,並等待活動的結果程式碼:

    Intent intent = new Intent(ACTION_PROVISION_MANAGED_PROFILE);
    startActivityForResult(intent, REQUEST_MANAGED_PROFILE);
    ...
    
    @Override
    public void onActivityResult(int req, int res, Intent i) {
        if (req == REQUEST_MANAGED_PROFILE) {
            if (res == Activity.RESULT_OK) {
                setResult(Activity.RESULT_OK);
                finish();
            } else {
                Toast.makeText(this, Provisioning failed,
                        Toast.LENGTH_SHORT).show();
            }
        }
    }
    
  • 如果發生以下情況,DPC 不應嘗試設定裝置擁有者作業模式: 裝置已完成佈建 (詳情請參閱 ProvisioningStateUtil.isDeviceProvisioned())。 在本範例中,DPC 會檢查裝置是否已佈建:

    public static boolean isDeviceProvisioned(Context context) {
    ContentResolver cr = context.getContentResolver();
        return
    Settings.Global.getInt(cr, DEVICE_PROVISIONED, 0) != 0;
    }
    
  • 選用設定。DPC 可使用 EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE敬上 啟動佈建,以便將狀態資訊傳回其額外執行個體時 DeviceAdminReceiver。 (設定檔擁有者的案件正在工作資料夾內執行)。 TestDPC 會使用這個額外 才能在 Google 帳戶流程中輸入不同活動 佈建完成。詳情請參閱 DeviceAdminReceiver

    public class DeviceAdminReceiver extends android.app.admin.DeviceAdminReceiver
    {
      @Override
      public void onProfileProvisioningComplete(Context context, Intent intent) {
        // Retrieve the admin extras bundle, which we can use to determine the original context for
        // Test DPC's launch.
        PersistableBundle extras = intent.getParcelableExtra(
                EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE);
        ...
    
  • 如要設定工作資料夾,DPC 必須將新增的帳戶遷移至 新的工作資料夾。為此,DPC 必須將 啟動意圖 ACTION_PROVISION_MANAGED_PROFILE

  • DPC 應向使用者提供明確的行動號召,例如 「完成」按鈕),即可在設定程序結束時結束應用程式,讓使用者不認為 導致這些成員在參與流程中 死路了

  • DPC 應使用設定精靈主題或版面配置程式庫,方便使用者 享有流暢的使用體驗

NFC 方法

DPC 可以使用 NFC 佈建方法來設定裝置擁有者模式。在 NFC 佈建方法 (簡稱 NFC 標記) 會製作 NFC 程式設計師應用程式, 包含初始政策、Wi-Fi 設定、設定和 客戶設定裝置擁有者所需的佈建詳細資料 作業模式。當您或您的客戶在裝置上安裝 NFC 程式設計師應用程式時 一部 Android 裝置,該裝置就成為程式設計師。

如要佈建裝置,IT 管理員可立即取得新裝置 並貼在程式設計師裝置或 NFC Tag 上。串場廣告轉移 才能連上網際網路並下載 適當的政策和設定該裝置之後將由 DPC 管理。

裝置佈建完成後,Google Play 會短暫顯示未受管理的裝置 也就是消費者內容,而不是應該 螢幕。時間從幾分鐘到一小時。

建立 NFC 程式設計師應用程式與程式設計師裝置

如果裝置搭載 Android 10 以下版本,可使用 Android Beam 完成 NFC 佈建:

  1. 下載 NFC 程式設計師範例應用程式。 您可以照原樣使用範例,不需新增;也可以修改 設定預設值
  2. 在所選裝置上安裝程式設計師應用程式。
  3. 啟動 NFC 程式設計師應用程式,然後選取「Load Defaults」 (com.example.android.apis)(這段文字可能因預設 您設定的參數)。

佈建客戶裝置

  1. 將程式設計師裝置或 NFC Tag 觸碰到新裝置或現有裝置 恢復原廠設定。
  2. 確認裝置停留在初始「歡迎」畫面。 就會顯示。指定文字為「Ready to send:{...}」 。
  3. 在裝置政策控制器 (DPC):
    1. 加密裝置。
    2. 如果是碼區多重進出 (CDMA) 裝置:啟用 電話畫面上顯示電話 (無需任何互動)。
    3. 設定 Wi-Fi 連線。
    4. 下載 com.example.android.apis 的 APK 檔案。
    5. 安裝 com.example.android.apis。
    6. 將 com.example.android.apis 中的範例裝置管理員設為裝置擁有者。
    7. 顯示成功的「浮動式訊息」裝置擁有者啟用時。
  4. 返回首頁後 (系統會自動略過設定精靈), 確認 com.example.android.apis 已設為裝置擁有者:
    1. 在「設定」>「設定」中安全性 >裝置管理員,請確定「Sample Device」(範例裝置) 無法移除管理員。
    2. 在「設定」>「設定」中使用者 >使用者與設定檔 >您 (擁有者),請確認 擁有者是唯一可使用的帳戶 (每部裝置只能有一個有效帳戶) 裝置擁有者。

其他資源

進階 NFC 說明各種標記技術、寫入 NFC 等主題 標記和前景調度

手動安裝裝置政策控制器 (DPC)

如要使用手動 DPC 安裝佈建方式設定個人資料擁有者模式, 使用者從 Google Play 下載並安裝您的 DPC。接著是裝置政策控制器 (DPC) 引導使用者完成後續設定商家檔案擁有者的程序 受管理 Google 帳戶

DPC 可在建立代管 Google 帳戶前後新增該帳戶 工作資料夾。舉例來說,DPC 可根據特定資料 使用者的 EMM 憑證,而不是顯示受管理 Google 帳戶的提示 首先。

設定個人資料擁有者模式

請先新增受管理 Google 帳戶

  1. 使用者從 Google Play 下載並安裝您的裝置政策控制器 (DPC)。
  2. DPC 會先新增受管理 Google 帳戶,再建立工作資料夾 使用 AccountManager.addAccount()
  3. DPC 開始在個人資料夾中執行,並啟動後續程序 使用下列程式建立工作資料夾:
  4. 工作資料夾中的 DPC 會完成佈建程序。一旦工作後 資料夾建立完成後,DPC 也會在工作資料夾中執行。裝置政策控制器 (DPC) 工作資料夾就會為 受管理 Google 帳戶,確保裝置不遭駭 以及驗證是否強制執行政策 (例如 密碼)。
  5. 佈建工作資料夾後,DPC 就會收到廣播訊息 ACTION_PROFILE_PROVISIONING_COMPLETE
  6. 個人資料夾中的裝置政策控制器 (DPC) 被自己停用,或使用者移除

請先建立工作資料夾

  1. 使用者從 Google Play 下載並安裝您的裝置政策控制器 (DPC)。
  2. DPC 開始在個人資料夾中執行,並啟動後續程序 使用下列程式建立工作資料夾:
  3. 裝置政策控制器 (DPC) 會使用 AccountManager.addAccount()
  4. DPC 收到廣播訊息 ACTION_PROFILE_PROVISIONING_COMPLETE敬上 並讀取 EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
  5. 工作資料夾中的 DPC 會完成佈建程序。 工作資料夾建立完成後,DPC 也會在工作中運作 工作資料夾中的 DPC 會透過以下方式完成佈建程序: 推送受管理 Google 帳戶的政策,確保裝置 未處於遭駭狀態,並確認政策已強制執行 (例如需要輸入密碼)。
  6. DPC 會透過以下方式啟用工作資料夾: DevicePolicyManager.setProfileEnabled()
  7. 個人資料夾中的裝置政策控制器 (DPC) 被自己停用,或使用者移除

  1. Android 5.1 中的 Google 帳戶方法僅支援設定檔擁有者的作業模式,使用者只能依序前往「設定」>「設定」新增帳戶。