Android 当媒体变更后,通知其他应用重新扫描

 

在媒体文件改变后 发出 Intent.ACTION_MEDIA_SCANNER_SCAN_FILE广播,告知其他应用,媒体文件发生改变。

 

具体代码片段:

 1 File oldFile = new File(oldPath);
 2 File newFile = new File(newPath);
 3 if (oldFile.exists() && !newFile.exists()) {
 4     if (oldFile.renameTo(newFile)) {
 5         
 6         Uri fileUri = Uri.fromFile(newFile);
 7         Intent intent = new Intent();
 8         intent.setAction(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
 9         intent.setData(fileUri);
10         sendBroadcast(intent);
11     }
12 }

经过测试上面的代码在三星,联想的手机上不好用

经过试验 将面代码的 6- 10 行换成下面的代码就好用了

sendBroadcast(newIntent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+Environment.getExternalStorageDirectory())));

 

 

 

 

转载于:https://www.cnblogs.com/sun_moon_earth/p/3338488.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值