AV Pipeline Kit Demo无法正常运行,提示需外部存储文档相关问题求助
HMS AV Pipeline Kit 权限相关问题排查
1. 外部存储权限是否必须配置
这个权限不是Kit本身强制要求的,完全取决于你使用的业务场景:
- 如果你的使用场景涉及读取本地存储的音视频文件作为输入源、将处理后的媒体文件导出到公共外部存储目录,就必须申请对应的存储权限,官方示例Demo默认加载本地存储内的测试媒体文件、导出处理结果到公共目录,因此代码中内置了存储权限校验逻辑。
- 如果你的场景仅使用在线流作为输入、处理结果也不需要写入公共外部存储,可不申请该权限。
2. 注释校验逻辑后仍无法运行的排查方案
- 确认系统版本对应的权限配置是否正确:
Android 13及以上系统已废弃原有WRITE_EXTERNAL_STORAGE/READ_EXTERNAL_STORAGE权限,需要根据场景申请对应细分权限:- 读取本地音视频文件需申请
READ_MEDIA_VIDEO、READ_MEDIA_IMAGES、READ_MEDIA_AUDIO权限 - 修改公共存储内的媒体文件需额外申请
MANAGE_MEDIA权限
仅注释原有旧权限的校验逻辑不会自动获取适配高版本系统的对应权限,依然会出现资源加载失败的问题。
- 读取本地音视频文件需申请
- 排查Logcat日志定位具体错误:
运行时无崩溃不代表没有业务错误,可在Logcat中筛选AVPipeline标签查看日志,大概率会打印权限被拒绝、输入文件不存在/无法读取类的报错信息,可对应报错信息调整配置。 - 确认输入源配置是否匹配:
如果你无需使用本地存储,需要将示例Demo中默认的本地文件输入源替换为你实际使用的在线流地址,同时移除读取本地文件的相关逻辑,才能跳过存储权限正常运行。
问题对应截图:
内容的提问来源于stack exchange,提问作者kyouuu
相关产品推荐
相关产品推荐


