安全中心 UI 的程式碼位於safetycenter
目錄中packages/modules/Permission/PermissionController/src/com/android/permissioncontroller/safetycenter/
。使用 OEM 覆寫資料夾中的執行時間資源覆寫 (RRO) 自訂安全中心 UI。有關 RRO 的信息,請參閱在運行時更改應用程式資源的值。
安全中心主題和顏色
安全中心有四個共享相同 UI 屬性的主要主題:
- 安全中心燈
- 安全中心黑暗
- 安全中心快速設定指示燈
- 安全中心快速設定深色
安全中心主題包含預設顏色。 UI的主要顏色取自Android系統顏色,可以自動適應OEM對Android顏色的通用客製化。預設情況下,這些顏色會作為 Android 中 Material You 樣式的一部分進行調整。
您可以透過覆蓋安全中心的值來變更安全中心的顏色。
安全中心UI顏色 | 屬性名稱 | 資源 |
---|---|---|
背景 | android:colorBackground | @android:color/background_device_default_light @android:color/primary_dark_device_default_settings |
表面 | colorSurface | @color/sc_surface_light @color/sc_surface_dark |
表面變體 | colorSurfaceVariant | @color/sc_surface_variant_light @color/sc_surface_variant_dark |
主要文本 | android:textColorPrimary | @android:color/text_color_primary |
次要文本 | android:textColorSecondary | @android:color/text_color_secondary |
圖示 | android:textColorSecondary | @android:color/text_color_secondary |
資源 | 預設值 |
---|---|
@color/sc_surface_light | @android:color/system_neutral1_500 ,L星值為98(感知亮度) |
@color/sc_surface_dark | @android:color/system_neutral1_800 |
@color/sc_surface_variant_light | @android:color/system_neutral2_100 |
@color/sc_surface_variant_dark | @android:color/system_neutral1_700 |
問題嚴重性顏色
安全中心透過交通燈顏色系統傳達問題的嚴重性:
- 綠色表示資訊問題和正常狀態
- 黃色表示推薦
- 紅色代表嚴重問題
- 灰色表示缺少訊息
預設情況下,這些顏色取自 Google Material 調色板。我們建議您保留這些基色,但您可以使用綠色、黃色和紅色調色板的不同色調。
這些顏色屬性用於關聯安全中心 UI 中的嚴重性色彩項目,包括圖示、按鈕以及掃描和狀態變更動畫。修改這些顏色會重新著色所有元素。例如,修改@color/sc_status_info_{light,dark}
會變更掃描期間靜態影像和背景動畫中的背景顏色。
無論裝置是否設定為深色模式,安全中心快速設定主題都使用深色模式顏色。
嚴重性 | 使用者介面元素 | 屬性或資源名稱 | 預設顏色 |
---|---|---|---|
訊息(綠色) | 狀態盾 | ?attr/colorScStatusInfo | 光:綠 600 (#1e8e3e) 深色:綠色 500 (#34a853) |
狀態護盾容器 | ?attr/colorScStatusBackgroundInfo | 光:綠色 100 (#ceead6)colorSurfaceVariant | |
圖示 | ?attr/colorScIconInfo | 綠色 500 (#34a853) | |
主要操作按鈕 | @color/safety_center_button_info | 綠色 400 (#5bb974) | |
輔助操作按鈕 | @color/safety_center_outline_button_info | 綠色 300 (#81c995) | |
推薦(黃色) | 狀態盾 | ?attr/colorScStatusRecommend | 光:黃 600 (#f9ab00) 深色:黃色 500 (#fbbc04) |
狀態護盾容器 | ?attr/colorScStatusBackgroundRecommend | 光:黃色 100 (#feefc3) 深色: colorSurfaceVariant | |
圖示 | ?attr/colorScIconRecommend | 黃 500 (#fbbc04) | |
主要操作按鈕 | @color/safety_center_button_recommend | 黃 400 (#fcc934) | |
輔助操作按鈕 | @color/safety_center_outline_button_recommend | 黃色 300 (#fdd663) | |
警告(紅色) | 狀態盾 | ?attr/colorScStatusWarn | 光:紅 600 (#d93025) 深色:紅色 500 (#ea4335) |
狀態護盾容器 | ?attr/colorScStatusBackgroundWarn | 光:紅 100 (#fad2cf) 深色: colorSurfaceVariant | |
圖示 | ?attr/colorScIconWarn | 紅色 500 (#ea4335) | |
主要操作按鈕 | @color/safety_center_button_warn | 紅 400 (#ee675c) | |
輔助操作按鈕 | @color/safety_center_outline_button_warn | 紅 300 (#f28b82) | |
無推薦(灰色) | 圖示 | ?attr/colorScIconNull | 灰色 600 (#80868b) |
在Android 14中,為每個主題顏色屬性新增了可疊加的顏色資源,並修改了一些預設顏色:
資源名稱 | Android 13 背景顏色 | Android 14 背景顏色 | Android 14 十六進位代碼 |
---|---|---|---|
@color/sc_status_info_light | 綠色600 | 語意綠色 | #0E8435 |
@color/sc_status_recommend_light | 黃600 | 不變 | |
@color/sc_status_warn_light | 紅600 | 不變 | |
@color/sc_status_info_dark | 綠色500 | 綠色400 | #5BB974 |
@color/sc_status_recommend_dark | 黃500 | 黃400 | #FCC934 |
@color/sc_status_warn_dark | 紅500 | 紅400 | #EE675C |
@color/sc_status_background_info_light | 綠色100 | 不變 | |
@color/sc_status_background_recommend_light | 黃色100 | 不變 | |
@color/sc_status_background_warn_light | 紅100 | 不變 | |
@color/sc_status_background_info_dark | sc_surface_variant_dark | 不變 | |
@color/sc_status_background_recommend_dark | sc_surface_variant_dark | 不變 | |
@color/sc_status_background_warn_dark | sc_surface_variant_dark | 不變 | |
@color/sc_icon_info_light | 綠色500 | 不變 | |
@color/sc_icon_recommend_light | 黃500 | 不變 | |
@color/sc_icon_warn_light | 紅500 | 不變 | |
@color/sc_icon_null_light | 灰色600 | 不變 | |
@color/sc_icon_info_dark | 綠色500 | 綠色400 | |
@color/sc_icon_recommend_dark | 黃500 | 黃400 | |
@color/sc_icon_warn_dark | 紅500 | 紅400 | |
@color/sc_icon_null_dark | 灰色600 | 灰色400 | #BDC1C6 |
@color/sc_shield_accent_dark | 無法使用 | 灰色900 | #202124 |
使用者介面顏色
綠色狀態
綠盾 | |
---|---|
#1E8E3E(綠色/600) | |
深色主題 #34A853(綠色/500) |
綠色貨櫃 | |
---|---|
#CEEAD6(綠色/100) | |
深色主題 #474741 |
綠色設定圖示 | |
---|---|
#34A853(綠色/500) | |
深色主題 #34A853(綠色/500) |
掃描按鈕 | |
---|---|
綠色按鈕 | |
#5BB974(綠色/400) |
標題 | 字幕 |
---|---|
#1B1C17(主要文字顏色) | #46483B(文字顏色次要) |
黃州
黃盾 | |
---|---|
#F9AB00 (黃色/600) | |
深色主題 #FBBC04(黃色/500) |
黃色容器 | |
---|---|
#FEEFC3(黃色/100) | |
深色主題 #474741(黃色/500) |
黃色設定圖標 | |
---|---|
#FBBC04(黃色/500) | |
深色主題 #FBBC04(黃色/500) |
掃描按鈕 | |
---|---|
黃色按鈕 | |
#5BB974(黃色/400) |
標題 | 字幕 |
---|---|
#1B1C17(主要文字顏色) | #46483B(文字顏色次要) |
紅色狀態
紅盾 | |
---|---|
#D93025(紅色/600) | |
深色主題 #EA4335(紅色/500) |
紅色容器 | |
---|---|
#FAD2CF(紅/100) | |
深色主題 #474741 |
紅色設定圖標 | |
---|---|
#EA4335(紅色/500) | |
深色主題 #EA4335(紅色/500) |
解除安裝按鈕 | |
---|---|
紅色按鈕 | |
#EE675C(紅色/400) |
標題 | 字幕 |
---|---|
#1B1C17(主要文字顏色) | #46483B(文字顏色次要) |
字體和文字外觀
安全中心字體和文字外觀基於 Android 預設文字外觀,並且應繼承 OEM 已為其裝置範圍樣式配置的字體系列、粗細和其他屬性的任何變更。可以使用 RRO 直接覆蓋安全中心文字外觀。
安全中心文字外觀 | 設備預設底座 | 顏色 | 尺寸 | 重量 |
---|---|---|---|---|
TextAppearance.SafetyCenter.Headline | TextAppearance.DeviceDefault.Headline | android:textColorPrimary | 各不相同 | 常規的 |
TextAppearance.SafetyCenter.Headline.Status | TextAppearance.DeviceDefault.Headline | android:textColorPrimary | 22 SP/28 SP | 」 |
TextAppearance.SafetyCenter.Headline.Issue | TextAppearance.DeviceDefault.Headline | android:textColorPrimary | 18 sp/24 sp | 」 |
TextAppearance.SafetyCenter.Headline.Entry | TextAppearance.DeviceDefault.Headline | android:textColorPrimary | 20 sp/24 sp | 」 |
TextAppearance.SafetyCenter.Medium | TextAppearance.DeviceDefault.Medium | 各不相同 | 14 sp/20 sp 或 16 SP/24 SP | 中等的 |
TextAppearance.SafetyCenter.Body | TextAppearance.DeviceDefault.Small | android:textColorSecondary | 14 sp/20 sp | 常規的 |
間距和样式
安全中心對填滿和邊距使用一組通用的預設填滿值。透過覆蓋間距值來變更安全中心資訊密度。
資源名稱 | 預設值 |
---|---|
@dimen/sc_spacing_xxxsmall | 2 dp |
@dimen/sc_spacing_xxsmall | 4 dp |
@dimen/sc_spacing_xsmall | 8 dp |
@dimen/sc_spacing_small | 12 dp |
@dimen/sc_spacing_medium | 14 dp |
@dimen/sc_spacing_large | 16 dp |
@dimen/sc_spacing_xlarge | 18 dp |
@dimen/sc_spacing_xxlarge | 20 dp |
@dimen/sc_spacing_xxxlarge | 24 dp |
您可以自訂安全中心卡的角半徑。一個角尺寸半徑用於按鈕,三個角尺寸用於安全中心卡:
資源名稱 | 預設值 |
---|---|
@dimen/sc_button_corner_radius | 12 dp |
@dimen/sc_card_corner_radius_large | 28 dp |
@dimen/sc_card_corner_radius_medium | 20 dp |
@dimen/sc_card_corner_radius_xsmall | 4 dp |
快速設定圖塊
可透過 PermissionController 模組中實現的「快速設定」磁貼存取安全中心。快速設定圖塊重複使用了安全中心畫面中的一些 UI 元件,因此可疊加功能可以正常運作:
- 快速設定磁貼服務:
SafetyCenterQsTileService.kt
- 快速設定活動:
SafetyCenterQsActivity.java