此功能在 Android API 35+ 上可用,您可以通过使用 SensitiveContent 小部件进行尝试。有关详细信息,请参阅下面的指南。

关于 SensitiveContent 小部件

#

您可以在应用中使用 SensitiveContent 小部件,将子 Widget 的内容敏感度设置为以下 ContentSensitivity 值之一:notSensitivesensitiveautoSensitive。您选择的模式有助于确定在进行媒体投影时是否应模糊(黑屏)设备屏幕,以保护用户的敏感数据。

您的应用中可以包含任意数量的 SensitiveContent 小部件,但如果其中任何一个具有 sensitive 内容值,则在进行媒体投影时屏幕都会被模糊。因此,对于大多数用例,使用多个 SensitiveContent 小部件比在应用的小部件树中使用一个 SensitiveContent 小部件没有优势。此功能在 Android API 35+ 上可用,在较低 API 版本和其他平台上没有效果。

使用 SensitiveContent 小部件

#

对于您想保护免受媒体屏幕共享的内容(例如,MySensitiveContent() 小部件),您可以将其包裹在 SensitiveContent 小部件中,如下面的示例所示:

dart
class MyWidget extends StatelessWidget {
  ...
  Widget build(BuildContext context) {
    return SensitiveContent(
      sensitivity: ContentSensitivity.sensitive,
      child: MySensitiveContent(),
    );
  }
}

在 Android API 34 及更低版本上运行时,在进行媒体投影时屏幕不会被模糊。该小部件将存在于小部件树中,但没有其他影响,您无需在不支持此功能平台上避免使用 SensitiveContent

更多信息

#

有关更多信息,请访问 SensitiveContentContentSensitivity API 文档。