앱 내에서 사진을 찍거나  혹은 동영상 촬영을 하고 SD카드에 저장을 하고

 

저장한 미디어에 대한 스캐닝을 하는 방법이 두가지가 있는데,

 

하나는 전체 미디어에 대한 스캐닝을 요청하여 DB를 갱신하는 방법,

 

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+Environment.getExternalStorageDirectory())));

의 방법과,

 

방금 저장한 미디어를 한정으로 스캐닝을 요청해서 DB를 갱신하는 방법이 있잖습니까?

 

Uri uri = Uri.parse("file://" + path);
Intent i = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
i.setData(uri);
sendBroadcast(i);


이  그것으로 알고 있는데요, 전체 미디어에 대한 요청의 경우에는 소스 내에서 동작을 잘 하지만,

 

단일 미디어의 경우에는 아예 동작을 하지 않더군요.

 

검색을 해보니 저와 비슷한 경험을 하신 분이 계시더시던데요,

 

http://www.androidpub.com/android_dev_qna/123276

 

딱히 리플로 달아주신분 같은 경우에는 전체미디어 스캐닝으로 처리하는 방법을 소개해 주셨더라구요.

 

미디어 스캐닝 같은 경우 기기에 따라 속도가 오래 걸리는 경우가 있기 때문에,

 

사진 한장 찍은 것만으로 DB를 전체 재스캔 하는 것은 조금 무리가 있는 것 같습니다.

 

현재 2.3(진저브레드)를 사용하고 있고요.

 

단일 미디어에 대한 미디어 스캐닝을 하는 방법이 수정 된 걸까요?