我们做Android开发时奖保存图片到SD卡,但是Gallery中不能及时显示 下面我找到了问题所在然后解决了这个问题。

当保存图片后打开gallery时,有的会自动给你刷新,有的不行,这样就导致图片保存到SD卡上时,不能及时在gallery中看到,遇到这种情况最好是自己刷新。

通过 Intent.ACTION_MEDIA_MOUNTED 进行整个SD卡扫描:

 代码如下 
public void sdScan(){    
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"   
                    + Environment.getExternalStorageDirectory())));    
}

通过 Intent.ACTION_MEDIA_SCANNER_SCAN_FILE 扫描某个文件:

 代码如下 

public void fileScan(String filePath){    
        Uri data = Uri.parse("file://"+filePath);    
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, data));    
}

注:filePath为图片在SD卡中的地址,当保存图片后,调用以上方法即可; sendBroadcast为类Context的一个方法。

 

也可参考:

帖子1,Android Camera存图片到SD卡 及时更新的问题

帖子2,保存图片到SD卡,但是Gallery中不能及时显示的问题

 

转载于:https://www.cnblogs.com/davesuen/p/3391678.html

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐