有什么方法可以检测 MediaScanner 现在是否正在运行。
例如,如果 mediascanner 正在运行,线程将休眠 200 英里。谢谢。
使用下面的代码。
public static boolean isMediaScannerScanning(ContentResolver cr) {
boolean result = false;
Cursor cursor = query(cr, MediaStore.getMediaScannerUri(),
new String [] {MediaStore.MEDIA_SCANNER_VOLUME},
null, null, null);
if (cursor != null) {
if (cursor.getCount() == 1) {
cursor.moveToFirst();
result = "external".equals(cursor.getString(0));
}
cursor.close();
}
return result;
}
它是从 AOSP 的 ImageManager.java 复制而来的。