마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

커스텀 갤러리를 만들었는데, 크기가 0kbyte 파일이 목록에 뜹니다.

0 추천
갤러리에 0kbyte 짜리 jpg 파일이 미리보기화면도 없이 갤러리에 같이 뜹니다. 빈껍데기 파일같은데..  커스텀 갤러리 목록에 안 뜨게하는방법 아시는분 계신가요? 경험해보신분 조언 부탁드립니다.
R0R0 (2,610 포인트) 님이 2016년 8월 30일 질문

1개의 답변

+1 추천
 
채택된 답변
직관적으로 질문자님이 만드신 앱에서만 안뜨게 하시는게 목적이라고 하시면 파일사이즈가 0인것들은 예외하여 어댑터에 추가해주시면 됩니다.

new File("이미지 경로").length() 가 0인것들 제외

그러나 궁극적으로 MediaStore에 사이즈가 0인것이 들어가있는 경우 실제 파일이 삭제 되었지만 MediaStore와 동기화가 되지 않은 상태이므로 이를 제거해주는 방법은 다음과 같습니다.

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

예전이 이 방식으로 전체 미디어 스캐닝을 해줬던 기억이 나는데 특정 OS부터 안된다는 말을 들은거 같기도 하네요. 결과적으로는 미디어스캔을 하면 해결될 문제이니 위 방법으로 안되면 미디어 스캔하는 다른 코드를 찾아보시고 해결해 보시기 바랍니다.
Development Guy (70,570 포인트) 님이 2016년 8월 30일 답변
R0R0님이 2016년 10월 5일 채택됨
친절한답변 감사합니다 도움이 되었습니다.
...