使用MediaProjectionManager,VirtualDisplay,AudioRecord,MediaCodec以及MediaMuxer等API实现屏幕录制功能。MediaProjectionManager是Android5.0出现的API,但是现在已经Android十几了,尤其Android10对隐私保护真的做的很多事情啊!获取屏幕必须要foreground service绑定显式通知;mediaProjection必须要在通知显示之后获取;文件结构也重新设计了,不能随意创建文件夹了,系统提供了一些可用的文件夹,保存在Android/data/包名路径下。

在Android12的手机上写了个截屏、录屏的项目,遇到各种问题,解决完各种报错,终于运行起来了,先来看看效果吧!

AndroidManifest权限配置

//截屏
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
//录屏,录屏需要保存视频文件和获取声音
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name=&#

Android截屏、录屏,适配AndroidQ以上相关推荐

  1. Android iOS防录屏截屏

    目录 Android防录屏和截屏 关于WindowManager.LayoutParams.FLAG_SECURE 关于Display.FLAG_SECURE iOS防录屏和截屏 监听截屏 录屏监听 ...

  2. android 禁止截屏录屏功能,android 应用禁止截屏录屏

    更新记录 1.0.0(2021-02-01) Android 应用禁止截屏录屏 平台兼容性 Android iOS 适用版本区间:4.4 - 11.0 × 原生插件通用使用流程: 购买插件,选择该插件 ...

  3. Android 禁止截屏录屏

    一.应用中禁止截屏录屏 @Overrideprotected void onCreate(Bundle savedInstanceState) {getWindow().addFlags(Window ...

  4. 咔咔截屏录屏大师如何录制手机视频

    首先确保你的 Android 已经 ROOT ,那么接下来 小米手机需要开发版,并且需要在"授权管理"中开启"咔咔截屏录屏大师"的 ROOT 权限 具体操作:小 ...

  5. 超便携式截屏录屏软件FastStone Capture

    超便携式截屏录屏软件FastStone Capture 转载于:https://www.cnblogs.com/Renyi-Fan/p/8628196.html

  6. iphone屏幕镜像如何全屏_苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)

    苹果系统中的截屏和录屏.标记和剪辑功能一如它的其他产品设计,做得非常细致.在我们日常的工作中,不免会遇到这些功能,今天小编就给大家详细讲解下苹果系统截屏录屏.标记剪辑功能,希望对大家有所帮助! 001 ...

  7. 截屏录屏软件分享 FSCapture、Snipaste【目前见过的最好用的录屏软件】

    目录 截屏录屏软件--FSCapture 截屏软件--Snipaste-2.4-Beta-x64.zip 截屏录屏软件--FSCapture 使用教程(17:09):https://www.bilib ...

  8. 苹果xr截屏怎么截_苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)

    苹果系统中的截屏和录屏.标记和剪辑功能一如它的其他产品设计,做得非常细致.在我们日常的工作中,不免会遇到这些功能,今天小编就给大家详细讲解下苹果系统截屏录屏.标记剪辑功能,希望对大家有所帮助! 001 ...

  9. DXGI快速截屏录屏技术

    DXGI快速截屏录屏技术 概述   很多地方都需要用到截屏/录屏技术,比如桌面直播,桌面录制等等.在微软Windows平台,有很多截屏的接口,不过大多数性能并不理想,Windows8以后微软引入了一套 ...

  10. 截屏录屏和屏幕颜色抓取

    分享截屏录屏和屏幕颜色抓取两个工具 这两个工具都是我常用的,觉得还不错 下面分享链接以及使用方法 截屏录屏取色工具链接: https://pan.baidu.com/s/1GA75-5oX4yuujU ...

最新文章

  1. 构造函数中,成员变量一定要通过初始化列表来初始化的几种情况(转载)
  2. 一个简单的Makefile
  3. 遥控器按键不灵的修复方法
  4. [译] 每天一段 Spring 5 官方文档(5.1.4.RELEASE)—— Spring Framework Overview 06
  5. 野火stm32呼吸灯程序_说一说STM32启动过程
  6. 为什么重写equals方法时,要求必须重写hashCode方法?
  7. Leetcode639. Decode Ways II
  8. KEIL使用malloc函数申请堆空间失败的解决方法
  9. c语言创意作业蜂鸣器,蜂鸣器c语言程序_c语言编写蜂鸣器发声
  10. 计算机芯片级维修包括哪些,电脑芯片级维修教程
  11. Xpose模块抓取函数功能学习笔记
  12. el-dialog 圆角 白边问题
  13. qq扫描用户文件传腾讯服务器,QQ被传窃取用户浏览器隐私,腾讯称为判断恶意登录而读取的数据...
  14. css 好看滚动条样式大全,CSS 个性化滚动条样式
  15. HTML5 canvas热点图应用
  16. Android用MediaCodec将相机预览帧编码成MP4视频
  17. 第七讲-特征值与特征向量
  18. FineUI大版本升级,外置ExtJS库、去AXD化、表格合计行、表格可编辑单元格的增删改、顶......
  19. ar面部识别_苹果现场演示四款 AR 内容,iPhone X 面部识别效果惊艳
  20. 【读书笔记】explain详细解释

热门文章

  1. ftp工具下载,推荐5个流行的ftp工具下载软件
  2. Switch statement can be replaced with enhanced ‘switch‘
  3. 信息系统项目管理师论文范例5:成本管理
  4. matlab生成m序列的函数(本原多项式产生所有m序列)
  5. [IOS]SMS获取验证手机验证码
  6. Linux安装Docker并配置Docker镜像加速,daemon.json完整配置详解
  7. 用jquery的each方法遍历json对象
  8. 点击按钮,刷新验证码
  9. 华为OLT接入网ONT_MA5671配置笔记
  10. c++ 怎么控制输出的两位数不足十的时候用零来补齐前面空余的位数