5 댓글

Moderator
09-11-2018 07:43 AM ·
갤럭시 노트
안녕하세요. 삼성 갤러리 담당입니다.
갤러리에서 사진이 '!' 으로 보이는 직접적인 원인은 '디코딩 실패' 입니다.
주요 '디코딩 실패'의 원인은 아래와 같습니다.
1. 파일이 없음
- 외부 앱이 미디어 DB 의 레코드는 그대로 두고 물리 파일에 직접 접근해서 삭제한 경우
2. 파일은 있지만 디코딩 실패
- Storage의 I/O Error : 불량 상태의 외장메모리
- 손상된 파일 혹은 미지원 포맷
갤러리는 리스트보기 화면에서는 별도 저장된 작은 크기의 썸네일을 보여주고, 한장보기 화면에서는 고해상도로 보여주기 위해 원본을 액세스 해서 디코딩합니다.
로그 확인결과 DB에는 이미지 레코드가 있으나, 파일 경로에는 실제 파일이 없어서 디코딩에 실패한 로그가 다수 확인됩니다.
09-09 18:51:35.746 10078 2277 2354 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/NAVER Cloud/P20170909_101816112_D32C7DDE-D617-447D-934E-DC782F2B2D98.JPG (No such file or directory)
갤러리를 통해서 파일을 지울 경우에는 DB 레코드도 함께 삭제하기 때문에 이런 현상이 발생하지 않지만
다른 3rd party application(저장공간 정리 유틸 등)에서 DB 업데이트 없이 파일에 직접 접근하여 지울 경우 이런 현상이 나올 수 있습니다.
재부팅 등에 의해 DB가 갱신되면 느낌표 표시되는 파일들이 사라져서 나오지 않겠지만, 한 번 삭제된 파일은 복구할 수 없습니다.
감사합니다.
갤러리에서 사진이 '!' 으로 보이는 직접적인 원인은 '디코딩 실패' 입니다.
주요 '디코딩 실패'의 원인은 아래와 같습니다.
1. 파일이 없음
- 외부 앱이 미디어 DB 의 레코드는 그대로 두고 물리 파일에 직접 접근해서 삭제한 경우
2. 파일은 있지만 디코딩 실패
- Storage의 I/O Error : 불량 상태의 외장메모리
- 손상된 파일 혹은 미지원 포맷
갤러리는 리스트보기 화면에서는 별도 저장된 작은 크기의 썸네일을 보여주고, 한장보기 화면에서는 고해상도로 보여주기 위해 원본을 액세스 해서 디코딩합니다.
로그 확인결과 DB에는 이미지 레코드가 있으나, 파일 경로에는 실제 파일이 없어서 디코딩에 실패한 로그가 다수 확인됩니다.
09-09 18:51:35.746 10078 2277 2354 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/NAVER Cloud/P20170909_101816112_D32C7DDE-D617-447D-934E-DC782F2B2D98.JPG (No such file or directory)
갤러리를 통해서 파일을 지울 경우에는 DB 레코드도 함께 삭제하기 때문에 이런 현상이 발생하지 않지만
다른 3rd party application(저장공간 정리 유틸 등)에서 DB 업데이트 없이 파일에 직접 접근하여 지울 경우 이런 현상이 나올 수 있습니다.
재부팅 등에 의해 DB가 갱신되면 느낌표 표시되는 파일들이 사라져서 나오지 않겠지만, 한 번 삭제된 파일은 복구할 수 없습니다.
감사합니다.
