@Override public void onRefresh() { if (medias != null) { String root = null; for (Media media : medias) { if (root == null) { root = media.getFolderPath(); } else if (!media.getFolderPath().startsWith(root)) { while (root.length() > 1 && !media.getFolderPath().startsWith(root)) { root = ToolString.getParentPath(root); } if (root.length() <= 1) { break; } } } if (root != null) { LOG.debug("rescanning " + root); MediaScannerConnection.scanFile(getApplicationContext(), new String[]{root}, null, new OnScanCompletedListener() { @Override public void onScanCompleted(String path, Uri uri) { LOG.debug("file " + path + " was scanned seccessfully: " + uri); load(true); } }); } else { load(true); } } }
/** * @param context * @param files * @param mimeTypes */ public static void scanMediaFiles(final Context context, String[] files, String[] mimeTypes) { MediaScannerConnection.scanFile(context, files, mimeTypes, new OnScanCompletedListener() { @Override public void onScanCompleted(String arg0, Uri arg1) { // TODO } }); }
public static void scanMedia(Context context, final String[] filePath, final String[] mime) { MediaScannerConnection.scanFile(context, filePath, mime, new OnScanCompletedListener() { @Override public void onScanCompleted(String path, Uri uri) { Log.v(DEBUG_TAG, "file " + path + " was scanned seccessfully: " + uri); } }); }
public static void scanMediaJpegFile(final Context context, final File file, final OnScanCompletedListener listener) { MediaScannerConnection .scanFile(context, new String[]{file.getAbsolutePath()}, new String[]{"image/jpg"}, listener); }