通用技术 android 手机用命令 push 到手机中的多媒体文件在图库中无法及时显示的解决办法

大龄非待业青年 · 2016年06月03日 · 最后由 大龄非待业青年 回复于 2016年06月06日 · 2760 次阅读

问题

使用 adb push 命令将视频图片文件 copy 到手机中后,图库中无法查看,常用做法是重启,但实际稳定性测试过程中需要经常 push 并在图库中操作,且不允许重启


探索

发现重启或者重新开关下手机的 MTP 功能,图库中就可显示相关图片和视频,其中 MTP 功能的开关实际进行存储卡的重新挂载


解决办法

研究发现使用 adb shell am broadcast 命令发送通知可达到重新挂载 SD 卡的目的

该命令需要两个参数:

  • -a 广播名称 经过查询得到Intent.ACTION_MEDIA_MOUNTED
  • -d 挂载目录经过查询得到file:///storage/emulated/0

最终命令:
adb shell am broadcast -a Intent.ACTION_MEDIA_MOUNTED -d "file:///storage/emulated/0"

使用相关框架发送如上命令即可及时刷新图库中显示的资源

共收到 6 条回复 时间 点赞

good 下来尝试一下

—— 来自 TesterHome 官方 安卓客户端

#1 楼 @zsx10110 按道理对所有不能刷新出文件的应用和场景都通用

—— 来自 TesterHome 官方 安卓客户端

不错啊,前面遇到这个问题都不知道怎么处理了!

这是个好命令,赞。

我尝试了一下,好像不行。
如果使用 uiautomator2.0 的话,可以使用一下方法。
http://www.tuicool.com/articles/nI3ieq
或者自己搞 apk,然后发广播给 apk.. 😄

#5 楼 @sziitash 那估计是广播名称或者挂载目录不同吧
,你链接里的那种是用代码做的需要权限才行,adb shell 命令的权限比较高的应该不会有这问题,而且我是在 5.0 版本使用的呢

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册