4.4系统可以使用广播方式 可以刷新相册 但是4.4以上抛出异常,因为这个方法的API级别到19(4.4)之后就不管用了
sendBroadcast(new Intent(
Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://"
+ Environment.getExternalStorageDirectory())));
4.4系统以上需要使用这个方法扫描文件,以达到刷新相册的目的
调用:new singleMediaScanner (Context, File);//File 通过绝对路径获取图片文件的路径
方法1:
调用:scanFile(Path,context);
方法2:
2个方法都管用 ,一个是扫描文件一个是扫描路径的 感觉
http://stackoverflow.com/questions/4646913/android-how-to-use-mediascannerconnection-scanfile/5814533# 附上方法来源,感谢大神
sendBroadcast(new Intent(
Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://"
+ Environment.getExternalStorageDirectory())));
4.4系统以上需要使用这个方法扫描文件,以达到刷新相册的目的
调用:new singleMediaScanner (Context, File);//File 通过绝对路径获取图片文件的路径
方法1:
public class SingleMediaScanner implements MediaScannerConnectionClient {
private MediaScannerConnection mMs;
private File mFile;
public SingleMediaScanner(Context context, File f) {
mFile = f;
mMs = new MediaScannerConnection(context, this);
mMs.connect();
}
@Override
public void onMediaScannerConnected() {
mMs.scanFile(mFile.getAbsolutePath(), null);
}
@Override
public void onScanCompleted(String path, Uri uri) {
mMs.disconnect();
}
}
调用:scanFile(Path,context);
方法2:
private void scanFile(String path,Context context) {
MediaScannerConnection.scanFile(context,
new String[] { path }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
Log.i("TAG", "Finished scanning " + path);
}
});
}
2个方法都管用 ,一个是扫描文件一个是扫描路径的 感觉
http://stackoverflow.com/questions/4646913/android-how-to-use-mediascannerconnection-scanfile/5814533# 附上方法来源,感谢大神