下面列出了怎么用android.media.MediaScannerConnection.OnScanCompletedListener的API类实例代码及写法,或者点击链接到github查看源代码。
/**
* @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
}
});
}
@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);
}
}
}
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);
}