MediaScanner が現在実行されているかどうかを検出する方法はありますか。
たとえば、メディアスキャナーが実行されている場合、スレッドは 200 ミリの間スリープします。ありがとう。
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 からコピーされます。