保護你應用的敏感內容
瞭解如何保護 Flutter 應用中的敏感內容。
SensitiveContent 元件允許您防止包含敏感內容(例如密碼)的螢幕被投屏。要了解更多資訊,請檢視以下兩分鐘的“每週元件(Widget of the Week)”影片。
關於 SensitiveContent 元件
#
您可以在應用中使用 SensitiveContent 元件,將子 Widget 的內容敏感度設定為以下 ContentSensitivity 值之一:notSensitive、sensitive 或 autoSensitive。您選擇的模式決定了在媒體投屏過程中是否應遮蓋(黑屏)裝置螢幕以保護敏感資料。
您的應用中可以包含任意數量的 SensitiveContent 元件,但如果其中任何一個元件的值為 sensitive,則整個螢幕在媒體投屏期間都會被遮蓋。因此,對於大多數用例,在應用元件樹中使用多個 SensitiveContent 元件相比僅使用一個並無優勢。
此功能適用於 Android API 35 及以上版本,在較低的 API 版本或其他平臺上沒有影響。
使用 SensitiveContent 元件
#
對於您希望防止媒體投屏的內容(例如 MySensitiveContent() 元件),您可以使用 SensitiveContent 元件對其進行包裹,如下例所示:
class MyWidget extends StatelessWidget {
...
Widget build(BuildContext context) {
return SensitiveContent(
sensitivity: ContentSensitivity.sensitive,
child: MySensitiveContent(),
);
}
}
在 Android API 34 及以下版本上執行時,螢幕在媒體投屏期間不會被遮蓋。該元件將存在於元件樹中,但不會產生其他影響,您無需在不支援此功能的平臺上刻意避免使用 SensitiveContent。
更多資訊
#有關更多資訊,請訪問 SensitiveContent 和 ContentSensitivity 的 API 文件。