全屏意圖限制

為了防止廣告垃圾郵件和憑證網路釣魚,從 Android 14 開始,只能向提供通話和鬧鐘功能的應用程式授予發送全螢幕通知的預設USE_FULL_SCREEN_INTENT權限。

對於 Android 14 上安裝的所有應用,預設啟用USE_FULL_SCREEN_INTENT權限。安裝後,Google Play 商店會撤銷不具備通話或鬧鐘功能的應用程式的全螢幕意圖 (FSI) 權限。

對於安裝在運行低於 Android 13 版本的手機上的應用, USE_FULL_SCREEN_INTENT權限預設會保持啟用狀態。

使用者權限

在Android 14中,應用程式可以使用NotificationManager#canUseFullScreenIntent()來檢查是否可以傳送全螢幕通知。為了獲得使用者發送全螢幕通知的權限,應用程式使用ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT來啟動管理全螢幕意圖設置,如圖 1 所示:

fsi-ui

圖 1.用於使應用程式能夠發送全螢幕意圖的 UI。

管理全螢幕意圖設定位於「特殊應用程式存取」下的「設定」選單中。透過此 UI,使用者可以根據需要撤銷此權限。

OEM要求

在 Android 14 中,預設啟用應用程式的 FSI 權限。 OEM 必須指定哪些應用程式有資格獲得 FSI 權限。 OEM 必須確保第三方應用程式商店使用PackageInstaller.SessionParams為其應用程式設定 FSI 權限的初始授予狀態,特別是使用PERMISSION_STATE_DEFAULTPERMISSION_STATE_DENIEDPERMISSION_STATE_GRANTED參數。

驗證

使用NotificationFullScreenIntentVerifierActivity.java中的CTS Verifier 測試和NotificationManagerTest.java中的CTS 測試來驗證FSI 限制。

手動測試

請按照以下步驟手動測試應用程式上的 FSI 限制:

  1. 在應用的AndroidManifest.xml檔案中聲明USE_FULL_SCREEN_INTENT
  2. 使用ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT管理開啟或關閉 FSI 的設定。
  3. 在您的測試手機上,手動切換全螢幕通知的使用者權限,如圖 1 所示。
  4. 發送 FSI 通知。
  5. 驗證以下 FSI 權限和顯示模式組合的全螢幕通知的外觀:
FSI 授權解鎖螢幕鎖定螢幕離螢幕常亮顯示 (AOD)
由用戶授予帶有藥丸按鈕的持續提醒通知 (HUN)啟動FSI啟動FSI啟動FSI
被用戶拒絕HUN 帶藥丸按鈕 60 多歲帶有藥丸按鈕的 HUN 在 60 年代的列表中排名第一AOD 打開,顯示帶有藥丸按鈕的 HUN 60 秒HUN 帶藥丸按鈕 60 多歲