私人空間

圖 1. 私人空間可解鎖及鎖定,以顯示或隱藏裝置上的敏感應用程式。

使用者可以在裝置上建立安全隔離的私人空間,防止他人窺探敏感應用程式。私人空間中的應用程式會顯示在啟動器的獨立容器中,且私人空間鎖定時,不會顯示在最近使用的應用程式檢視畫面、通知、設定和其他應用程式中。

沙箱空間是獨立的 Android 個人資料 使用者在私人空間中新增或安裝應用程式時,系統會將應用程式安裝在這個新的 Android 個人資料中。系統會將此視為全新安裝的應用程式,且不會將任何應用程式資料複製到私人空間。空間鎖定時,系統會停止私人設定檔使用者,空間解鎖時則會啟動使用者。

私人空間中的應用程式會以獨立副本的形式安裝,與主要空間中的應用程式分開。私人空間和主要空間會分別儲存使用者內容 (使用者原創或下載) 和使用者帳戶。您可以使用系統的 Sharesheet 和相片挑選工具,在私人空間解鎖時,授予應用程式存取各空間內容的權限。

私人空間是以 Android 多使用者模式為基礎,並新增下列設定檔使用者類型

個人資料:
私人
使用者類型:
android.os.usertype.profile.PRIVATE

設定和啟動器應用程式

您必須更新設定和啟動器應用程式,才能支援鎖定、解鎖和隱藏狀態。私人空間處於鎖定狀態時,啟動器會提供解鎖的進入點 (隱藏狀態除外)。私人空間鎖定時,「設定」應用程式不得揭露私人空間的存在。

使用 LauncherApps#getLauncherUserInfo 識別私人設定檔使用者。啟動器應用程式需要註冊鎖定狀態解除鎖定狀態,並在收到這些廣播時,變更 UI 中私人空間的狀態。這兩項廣播都有一個額外的常數,稱為 EXTRA_USER,可用於參照私人設定檔使用者。

啟動器應用程式可以使用 UserManager.isQuietModeEnabled 方法檢查私人設定檔狀態。

私人個人資料

私人設定檔新增了新的設定檔類型 android.os.usertype.profile.PRIVATE,可用於私人空間。私人資料夾可以與工作資料夾和複製資料夾共存在同一部裝置上。這是與主要 Android 使用者分開的沙箱空間。私人空間解鎖後,應用程式就會顯示在設定、Sharesheet、相片挑選工具和文件 UI 中。私人空間鎖定時,這些介面不會顯示私人空間中的應用程式。 單一裝置只能有一個私人空間例項,且僅供主要使用者使用 (不適用於次要使用者或其他設定檔)。

權限

啟動器應用程式必須具備 android.permission.ACCESS_HIDDEN_PROFILES 權限和 android.app.role.RoleManager.ROLE_HOME 角色,才能存取私人設定檔。

如果實作項目未使用 AOSP 啟動器,則需要修改啟動器,才能支援私人設定檔。如要進一步瞭解如何開發具備私人空間的啟動器應用程式,請前往開發人員網站上的啟動器應用程式頁面

意圖

電話意圖會轉送給主要使用者,並顯示通知。 其他意圖僅限私人設定檔,不會重新導向。

將檔案移到私人空間

自 Android 16 QPR2 起,使用者可以將私人空間外的檔案移動或複製到私人空間。這項功能提供安全又簡單的方式,讓使用者將機密文件、相片和其他檔案存放在沙箱化的私人設定檔中。

如要啟動這項程序,請使用私人空間啟動器容器中的「新增」按鈕,然後點選「新增檔案」捷徑。使用者選取這個選項後,就能使用系統檔案選擇器,瀏覽及選取私人空間外的檔案。選取檔案後,使用者可以選擇複製檔案 (原始檔案會保留在原處),或是移動檔案 (成功轉移後會刪除原始檔案)。

檔案傳輸作業由新的系統元件管理,該元件只會在私人設定檔中以前景服務的形式執行,確保傳輸過程安全無虞。檔案會儲存至私人空間的 Downloads 資料夾。