Android 14 screenrecord录制视频失败的原因分析

在这里插入图片描述

文章目录

      • 1. 权限问题
      • 2. 存储空间不足
      • 3. 命令被中断
      • 4. 目标路径问题
      • 5. Android 14 的新限制
      • 6. 文件系统同步问题
      • 7. 录制失败
      • 检查步骤总结:

在 Android 14 系统上,使用 screenrecord 命令录制视频后,生成的文件大小为 0,可能的原因包括以下几点:

1. 权限问题

  • 问题描述screenrecord 需要有写入存储的权限。如果命令运行的用户(例如 adb shell 用户)没有足够的权限,文件可能无法正常写入。

  • 解决方法

    • 确保命令以具有足够权限的用户运行(如通过 adb root 切换到 root 用户)。
    • 检查目标路径是否有写权限:运行 ls -l /sdcard/ 查看权限。
    • 尝试将录制文件保存到 /data/local/tmp/ 路径,这是更安全的测试目录。
    screenrecord --time-limit 60 /data/local/tmp/111.mp4
    

2. 存储空间不足

  • 问题描述:目标路径所在的分区可能没有足够的存储空间,导致文件无法完整写入。
  • 解决方法
    • 使用 df -h 检查 /sdcard 或目标存储位置的剩余空间。
    • 如果空间不足,清理存储后重试。

3. 命令被中断

  • 问题描述screenrecord 在录制期间被中断(例如,因设备锁屏、adb 连接断开、用户主动终止等)。
  • 解决方法
    • 确保录制期间设备保持解锁状态。
    • 保持 adb 连接稳定。

4. 目标路径问题

  • 问题描述/sdcard/111.mp4 路径可能有问题,例如 /sdcard 被重定向到一个不可写路径。
  • 解决方法
    • 使用 ls -l /sdcard/ 查看 /sdcard 是否指向正确路径。
    • 尝试将文件保存到明确的路径,例如 /storage/emulated/0/111.mp4

5. Android 14 的新限制

  • 问题描述:Android 14 可能引入了新的权限或 API 限制,影响 screenrecord 的运行。
  • 解决方法
    • 确保设备已启用开发者选项,并允许 adb 调试。
    • 在 Android 14 上测试时,建议更新至最新的工具版本(例如,确保 adb 和 platform-tools 最新)。

6. 文件系统同步问题

  • 问题描述:录制完成后,sync 命令可能没有及时刷新缓存,导致文件大小显示为 0。
  • 解决方法
    • 运行 sync 后,等待几秒后再查看文件。

    • 确认文件状态:

      ls -lh /sdcard/111.mp4
      

7. 录制失败

  • 问题描述screenrecord 本身可能出错,没有实际开始录制。
  • 解决方法
    • 运行命令时加上 --verbose 参数,查看详细的输出日志:

      screenrecord --time-limit 60 --verbose /sdcard/111.mp4
      
    • 检查日志中是否有错误提示。


检查步骤总结:

  1. 检查路径写权限和存储空间。
  2. 确保命令运行期间设备状态正常(解锁、连接稳定)。
  3. 测试使用其他路径或短时录制,例如 10 秒。
  4. 查看日志输出定位问题。

结束语
Flutter是一个由Google开发的开源UI工具包,它可以让您在不同平台上创建高质量、美观的应用程序,而无需编写大量平台特定的代码。我将学习和深入研究Flutter的方方面面。从基础知识到高级技巧,从UI设计到性能优化,欢饮关注一起讨论学习,共同进入Flutter的精彩世界!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/920278.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Uniapp 简单配置鸿蒙

Uniapp 简单配置鸿蒙 前言下载并配置鸿蒙IDEHbuilder X 配置基本的信息生成相关证书登录官网获取证书IDE配置证书添加调试设备可能出现的问题前言 如今鸿蒙的盛起,作为多端开发的代表也是开始兼容鸿蒙应用的开发,接下来我将介绍如何在uniapp中配置鸿蒙。 注意:hbuilder X的…

git使用(一)

git使用(一) 为什么学习git?两种版本控制系统在github上创建一个仓库(repository)windows上配置git环境在Linux上配置git环境 为什么学习git? 代码写了好久不小心删了,可以使用git防止,每写一部分代码通…

C# 数据结构之【树】C#树

以二叉树为例进行演示。二叉树每个节点最多有两个子节点。 1. 新建二叉树节点模型 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace DataStructure {class TreeNode{public int Data { get;…

HarmonyOs鸿蒙开发实战(20)=>一文学会基础使用组件导航Navigation

敲黑板,以下是重点技巧。文章末尾有实战项目效果截图及代码截图可参考 1.概要 Navigation是路由导航的根视图容器Navigation组件主要包含​导航页(NavBar)和子页(NavDestination),导航页不存在页面栈中&am…

python从入门到精通:pyspark实战分析

前言 spark:Apache Spark是用于大规模数据(large-scala data)处理的统一(unified)分析引擎。简单来说,Spark是一款分布式的计算框架,用于调度成本上千的服务器集群,计算TB、PB乃至E…

Ubuntu从入门到精通(二)远程和镜像源配置齐全

Ubuntu从入门到精通(二) 1 常见操作配置 1.1 英文语言配置 1.1.1 打开设置 1.1.2 设置语言为英文 1.1.3 重启生效 1.1.4 再次进入,选择更新名字 1.1.5 再次进入,发现已经变成了英文 1.2 输入法配置 1.3 rustdesk安装 1.3.1 Windows系统配置 登陆:https://github.com…

HTML5拖拽API学习 托拽排序和可托拽课程表

文章目录 前言拖拽API核心概念拖拽式使用流程例子注意事项综合例子🌰 可拖拽课程表拖拽排序 前言 前端拖拽功能让网页元素可以通过鼠标或触摸操作移动。HTML5 提供了标准的拖拽API,简化了拖放操作的实现。以下是拖拽API的基本使用指南: 拖拽…

华为Ensp模拟器配置OSPF路由协议

目录 简介 实验步骤 Pc配置 路由器配置 OSPF配置 交换机配置 简介 开放式最短路径优先 (OSPF) 协议深度解析 简介 开放式最短路径优先(Open Shortest Path First, OSPF)是一种内部网关协议(IGP),用于在自治系统…

【最新鸿蒙应用开发】——合理使用自定义弹框

自定义弹窗选型 合理选择不同的系统能力实现弹窗,有利于提升应用开发效率,实现更好的功能需求,因此了解自定义弹窗的选型和差异非常重要。在应用开发中,为了选择出合适的弹窗选型,从使用场景上,需要重点关…

自动化爬虫Selenium

自动化爬虫Selenium 这篇文章, 我们将要学习自动化爬虫的知识啦。 目录 1.Selenium的基本操作 2.用Selenuim获取数据 3.当当网数据获取 4.实战 一、Selenium的基本操作 首先, 我们在使用Selenium之前, 需要做两件事情。第一件事情, 就是安装第三方库, 第二件事情, 就是…

开源可视化工具对比:JimuReport VS DataEase

在当今数据驱动的时代,高效的数据可视化工具成为企业洞察业务、做出决策的关键利器。那对于企业来讲如何选择BI产品呢? 在开源可视化工具的领域中,JimuReport和DataEase 以其独特的优势脱颖而出,究竟谁更胜一筹呢?让我…

Jenkins的环境部署

day22 回顾 Jenkins 简介 官网Jenkins Jenkins Build great things at any scale The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project. 用来构建一切 其实就是用Java写的一个项目…

Ubuntu22.04配置强化学习环境及运行相关Demo

什么是强化学习 强化学习(Reinforcement Learning,简称 RL)是机器学习中的一个重要分支,属于一种基于试错机制的学习方法。它通过让智能体(Agent)与环境(Environment)进行交互&…

AI 写作(一):开启创作新纪元(1/10)

一、AI 写作:重塑创作格局 在当今数字化高速发展的时代,AI 写作正以惊人的速度重塑着创作格局。AI 写作在现代社会中占据着举足轻重的地位,发挥着不可替代的作用。 随着信息的爆炸式增长,人们对于内容的需求日益旺盛。AI 写作能够…

丹摩征文活动 | AI创新之路,DAMODEL助你一臂之力GPU

目录 前言—— DAMODEL(丹摩智算) 算力服务 直观的感受算力提供商的强大​ 平台功能介绍​ 镜像选择 云磁盘创建 总结 前言—— 只需轻点鼠标,开发者便可拥有属于自己的AI计算王国 - 从丰富的GPU实例选择,到高性能的云磁盘,再到预配置的深度学习…

echarts的图例换行并对齐

现状: 期望: 实现方式: 通过对legend的formatter和textStyle组合设置宽度来实现,代码如下 这里会出现一个问题,发现设置了width没有效果,刚开始以为是宽度给的不够,然后发现并不是&#xff0c…

go-zero(二) api语法和goctl应用

go-zero api语法和goctl应用 在实际开发中,我们更倾向于使用 goctl 来快速生成代码。 goctl 可以根据 api快速生成代码模板,包括模型、逻辑、处理器、路由等,大幅提高开发效率。 一、构建api demo 现在我们通过 goctl 创建一个最小化的 HT…

Windows Server 2022 Web1

载入靶机,看到相关描述: 进入虚拟机发现桌面有phpstudy和解题两个软件: 打开解题.exe,发现里面是一些问题,接下来就需要获取相关信息: 1、shell密码 2、IP地址 3、隐藏账户名称 4、挖矿程序的矿池域名 打…

经典的网络安全技术

以我的理解,“黑客”大体上应该分为“正”、“邪”两类,正派黑客依靠自己掌握的知识帮助系统管理员找出系统中的漏洞并加以完善,而邪派黑客则是通过各种黑客技能对系统进行攻击、入侵或者做其他一些有害于网络的事情,因为邪派黑客…

【TDOA最小二乘解算】两步最小二乘迭代的TDOA解算方法,适用于二维平面、自适应锚点(附MATLAB代码)

本文所述的MATLAB代码实现了一个基于两步加权最小二乘法的二维目标定位算法,利用多个锚点(基站)和时间差到达(TDOA)数据来估计未知目标的位置。 文章目录 运行结果代码代码功能概述代码结构和详细说明初始化部分参数和…