Android 屏幕记录保护

Android 屏幕记录保护,android,screenshot,Android,Screenshot,我使用FLAG_SECURE来阻止screeshot和record屏幕,这对外部应用程序很好,但当我使用android自带的recrod屏幕时,这不起作用。 如何预防这种情况 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) window.setFlags(

我使用FLAG_SECURE来阻止screeshot和record屏幕,这对外部应用程序很好,但当我使用android自带的recrod屏幕时,这不起作用。 如何预防这种情况

class MainActivity : AppCompatActivity() {

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    window.setFlags(
      WindowManager.LayoutParams.FLAG_SECURE,
      WindowManager.LayoutParams.FLAG_SECURE);

    setContentView(R.layout.activity_main)
  }
}
该活动增加了安全标志。它会阻止android本机屏幕上的屏幕截图:

A OnePlus E1005

华为KIW-L24

谷歌像素2

对于OnePlus和Pixel,我使用了电源菜单中的系统屏幕截图选项。在华为的案例中,我使用了通知阴影中提供的系统屏幕截图选项。在这三种情况下,该设备都拒绝截图


FLAG_SECURE应阻止所有设备上的屏幕截图。如果您在使用特定设备时遇到问题,则该设备存在缺陷,你对此无能为力。

但是,当我使用android自带的recrod screen时,这不起作用-你说的android自带的recrod screen是什么意思?在实际的android系统中,你可以进行活动屏幕录制,不必使用外部应用程序,我使用的android 9可能是你设备特有的。我正在测试Nexus6p,没有迹象显示内置屏幕截图选项。很多设备都有android create 5.0版本,该页面上的所有内容都涉及到外部应用程序。我已经编写了在Android 5.0+上使用媒体投影API的应用程序,我还编写了大量关于FLAG_SECURE的文章。我很想尝试复制你的发现,但你的问题没有提供足够的细节让我这么做。O使用FLAG_SECURE并为其他应用程序工作,但narices récord没有