앱을 개발하다 보면 미디어 스캐닝을 강제로 하고 싶은 경우가 있다.
네트웍에서 음원이나 사진을 다운받았는 데 뮤직이나 갤러리에서 표시가 안되는 경우가 그렇다.
미디어 스캐너에게 파일정보가 업데이트가 되었다는 인텐트를 보낸다.
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://" + path)));
아래 내용은 KitKat부터 사용 불가합니다.
미디어 스캐닝이 너무 자주 불려 성능저하를 일으키는 문제로 앱단에서 호출하지 못하도록 되었습니다.
여하튼 KK 이전 버전이라면...
이럴 때는 아래처럼 인텐트를 하나 날려주자.
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://" + Environment.getExternalStorageDirectory())));
adb로 바로 미디어 스캐닝을 하고 싶다면 이렇게..(URI 부분을
file:///storage로하면 전체 storage에 대해 스캐닝을 수행함)
adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED
file:///storage/sdcard0
반응형
'Tips > Android' 카테고리의 다른 글
[Android] 가로 세로 회전 시 상태유지 - EditText의 내용이 지워지는 경우 (0) | 2013.03.22 |
---|---|
[Android] LCD 강제로 켜기 (0) | 2013.03.08 |
Android 4.2 에뮬레이터에서 한글 인식되게 하는 방법 (0) | 2013.02.24 |
USIM의 유무 확인 (0) | 2013.02.24 |
[Android] default app 삭제하기 (0) | 2013.02.24 |