当前位置: 首页 > 知识库问答 >
问题:

在Android应用程序中防止录屏时录音

任繁
2023-03-14
   @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
    setContentView(R.layout.activity_main);
    playVideo();
    //callAPI();
}

提前致谢

共有1个答案

司空实
2023-03-14

您必须首先检测到已开始录制

您可以通过注册显示监听器来实现这一点


 val displayManager = getSystemService(Context.DISPLAY_SERVICE) as? DisplayManager
        displayManager?.registerDisplayListener(listener, null)
       

    val listener = object : DisplayManager.DisplayListener {
        override fun onDisplayChanged(displayId: Int) {
            
        }

        override fun onDisplayAdded(displayId: Int) {
            
            // here stop video player 
        }

        override fun onDisplayRemoved(displayId: Int) {
          
        }
    }

FLAG_SECURE将使屏幕录音记录为空白屏幕

 类似资料:
  • 在android上使用Microsoft teams应用程序时,我决定使用系统内置的屏幕录制应用程序来录制讲座。 屏幕记录应用程序表示有另一个屏幕记录应用程序正在运行(见下面的屏幕截图)。我关闭了团队,重新开始了我的屏幕录制,它起作用了!!。 null 截图 编辑:我已经检查了与此问题类似的其他问题,但都是关于在应用程序代码中使用安全标志的。很明显,我想阻止任何从Google Play下载的应用程

  • 我正在尝试从应用程序开始屏幕录制,并遇到一些问题。我读过很多关于执行命令的文章,但似乎没有什么帮助。 问题是,当我开始屏幕记录文件时,它创建的大小为3014字节 <代码>(内容:[...]ftypisom[...]isom3gp4[...]),文件中不会记录任何内容。 我该如何修复它?

  • 我是新的Android。我试图将FB登录与我的Android应用程序集成。我已经按照developers.facebook.com的所有说明进行了集成。然而,当我试图运行我的应用程序时,它会在发布时崩溃。 请注意,我的AndroidManifest.xml中已经有Facebook应用程序ID、元数据标签和android活动标签。 布局如下: 以下是my LoginActivity的代码片段: 以下

  • 基本上我想要视频盗版保护 我的应用程序有视频流,我想保护我的视频流免受其他应用程序的影响。其他应用程序应该不能捕捉屏幕,而我的视频正在播放。任何建议我如何实现这一点…提前谢了。

  • 我正在将EAR应用程序从JBoss 6.1.0 AS迁移到Wildfly 8.2.0 AS。EAR包含log4j.xml,应用程序日志是通过使用以下代码行使用此日志配置文件生成的: 组织。阿帕奇。log4j。xml。DOMConfigulator。configureAndWatch(log4j文件路径) 应用程序日志生成正常,但在server.log,应用程序日志也会被附加。我正在使用standa

  • 问题内容: 在新的Google Play服务库(8.3.0)中,提供了一种新的登录方法。此方法涉及添加以下依赖项: build.gradle(应用程序级别): 在应用程序级别上: 创建设置为的发布应用程序版本时,该应用程序已发布且运行正常。但是,在创建具有设置为应用程序的发行版本时 ,启动时会崩溃,但以下情况除外: 我试图将这些设置添加到proguard项目配置中,但是它没有帮助(相同的异常不断出