android 下载保存视频到本地相册刷新 机型适配问题

android 下载保存视频到本地相册刷新问题
一般我们保存视频文件到本地
使用一下方法扫描到相册,通知相册更新

 MediaScannerConnection.scanFile(context, new String[]{destFile.getPath()}, null, null);

或者通过全局广播的方式,建议使用以上单个文件扫描通知即可。

但是发现vivo 手机只能在照相机目录下才能更新 所以我们需要单独处理vivo手机

//在picture目录下新建一个文件夹
//手机存储/Pictrues 大部分手机通用private static final String ROOT_PATH =Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + "/app名字目录";// 手机存储/DCIM/Camera下   vivo 小米等手机通用  兼容大部分private static final String ROOT_CAMERA_PATH = Environment.getExternalStorageDirectory() + File.separator + "DCIM" + File.separator + "Camera";//手机存储/DCIM  部分手机没有Camera  vivo y66等private static final String ROOT_CAMERA_PATH_BASE = Environment.getExternalStorageDirectory() + File.separator + "DCIM";

单独处理vivo手机保存到 “手机储存/DCIM/Camera ”路径下
测试发现vivo X9手机 路径为“手机储存/相机

    //    手机存储/相机下 vivo X9private static final String ROOT_CAMERA_PATH_1 = Environment.getExternalStorageDirectory() + File.separator + "相机";

以下是根据机型判断处理保存路径

    String rootPath = ROOT_PATH;String manufacturer = Build.MANUFACTURER;if (manufacturer != null && manufacturer.length() > 0) {String phoneType = manufacturer.toLowerCase();String systemModel = android.os.Build.MODEL;Log.d(TAG, "saveFileToAlbum phone_type: " + phoneType + " systemModel:" + systemModel);switch (phoneType) {case "huawei":break;case "vivo":if ("vivo X9".equals(systemModel)) {rootPath = ROOT_CAMERA_PATH_1;} else if ("vivo y66".equals(systemModel) || "vivo Y66".equals(systemModel))else {rootPath = ROOT_CAMERA_PATH_BASE ;}else{ rootPath = ROOT_CAMERA_PATH}break;case "xiaomi":rootPath =ROOT_CAMERA_PATH ;break;}}

其他机型等待测试 可一一对应处理。
vivo等手机为了兼容性处理“手机储存/DCIM/Camera ”与“手机储存/相机 ”都复制一份比较保险
手机储存/DCIM/Camera ” 可以兼容大部分手机
具体保存方法这里就不贴代码了,就是根据缓存本地的文件copy到相关目录即可

保存完成后 使用
MediaScannerConnection 进行操作。

不同于 MediaStore.Image.Media 和广播的方式,使用 MediaScannerConnection 可以指定文件路径,支持刷新完成的回调。

android 下载保存视频到本地相册刷新 机型适配问题相关推荐

  1. 保存视频文件到相册视频的时长为0

    问题:保存视频文件到相册视频的时长为0: 代码: String fileName = FileManagerUtil.getFileName(filePath); String mimeType =  ...

  2. [Swift]下载保存视频

    首先在info.plist中声明需要使用的隐私权限 Privacy - Photo Library Additions Usage Description APP想访问您的相册来保存图片或视频 let ...

  3. 如何下载HLS视频到本地(m3u8)

    如何下载HLS视频到本地(m3u8)? CreateTime--2018年3月21日16:07:00 Author:Marydon 一.需求 很多连载的动漫需要VIP会员才能观看,而且有的由于版权限制 ...

  4. ios——如何完成截屏操作并将截屏结果保存到设备本地相册

    ios工程--(UIView)获取设备相册权限截取屏幕内容并保存到设备本地相册 设备/引擎:Mac(11.6)/cocos 开发工具:Xcode(13.0) 开发需求:对某个玩法进行截屏操作,并以图片 ...

  5. UNI-APP_保存视频到手机相册

    uni.downloadFile({url: '必填,附件网络地址',success: (res) => {const that = thisif (res.statusCode === 200 ...

  6. cordova Vue 保存视频/图片到相册 - 实现下载视频/图片到相册

    cordova实现保存视频到相册功能 亲测可用*(支持安卓,ios; 目前看来ios14都是可以的:没有兼容问题:) * 需要使用到插件 1.文件系统插件 https://github.com/apa ...

  7. 「Python|音视频处理|场景案例」如何使用ffmpeg下载m3u8视频到本地并保存成mp4

    本文主要介绍如何使用ffmpeg批量下载视频到本地并保存成指定格式. 文章目录 场景说明 解决方案 源代码 场景说明 当我们希望将网页上的视频下载到本地的时候,我们可能获取到的视频地址是指向.m3u8 ...

  8. uniapp - 【全端兼容】实现保存视频到手机相册功能,将 mp4 在线视频下载并存储到用户的手机中,uniapp App h5 小程序将视频文件下载保存(详细示例源码及注释一键复制,开箱即用!)

    效果图 在uniapp开发中,实现安卓苹果app.h5网页网站.小程序保存视频到相册功能,点击保存按钮后下载视频并将其存储到用户的手机相册中,完整示例源码及注释,新手小白开箱即用! 直接复制代码,稍微 ...

  9. 小程序保存视频/图片到相册并且授权

    授权允许访问相册 wx.getSetting({ success(res) { if (!res.authSetting['scope.writePhotosAlbum']) { // 未授权 wx. ...

最新文章

  1. matlab rank函数报错,Matlab signrank函数(Wilcoxon signed rank test)中的矛盾结果[重复]
  2. 图片下方出现几像素的空白间隙
  3. vector的resize()和reserve()函数
  4. Eclipse调试Logcat类的说明
  5. linux安装joomla,安装Joomla
  6. 旧项目适配iphone6和iphone plus
  7. [html] 网页上的验证码是为了解决什么问题?说说你了解的验证码种类有哪些
  8. Linux权限、角色作用
  9. HTML画廊效果,HTML5实践-使用css装饰图片画廊的代码分享(一)
  10. C++ MFC与三菱PLC通讯
  11. pandas学习之变形
  12. PS怎么把模糊的照片,变得更加清晰
  13. 如何制作一个vagrant的base box 及安装 additions
  14. 适合计算机编程开发的笔记本电脑推荐
  15. 华为Watch Buds耳机打电话时效果差、听不清楚声音、通话有杂音是怎么回事?
  16. mysql 对账语句_关于对账的一些理解
  17. 2022无线WIFI路由器的不常用功能整理(带USB接口,可插手机卡)适合短期出差、拉有线网络不方便等。
  18. Python 模拟Hermite Polynomial厄米特多项式
  19. 我的奇思妙想机器人消防员_我的奇思妙想机器人作文500字
  20. 2021-2027全球与中国汽车导航地图市场现状及未来发展趋势

热门文章

  1. 人脸识别手机端APK分享 | 极速体验人脸识别功能 创建一个简单的人脸识别手机APP程序
  2. 写论文时,参考文献怎么引用?
  3. Java多线程面试题总结(常见多线程面试题)
  4. 云服务器deeplearning_吴恩达deeplearning.ai将于11月6日开放第四课,主讲卷积神经网络...
  5. 严重: Servlet.service() for servlet [springmvc] in context with path [] threw exception [Request proce
  6. 学习必要的理财知识会让你更快的富起来!
  7. 【C语言进阶】指针(进阶2)
  8. gdc服务器硬盘修复,GDC硬盘检测、阵列新建和修复.pptx
  9. 数字电路设计之Spice仿真
  10. ps:图像格式的选择