안드로이드

StorageScope 작업하면서 직면한 문제

코딩하는후운 2021. 6. 16. 16:08
반응형

* 사진 촬영 후 uri 받아온 것으로 File 변환시 lack 에러 남.
: Uri lacks 'file' scheme: content://media/external/images/media/97 에러
참조 : python2.net/questions-163593.htm

 

 

* Q이전과 Q이후 둘다 content: Uri이면 파일로 바꿀시에 lack 에러 남.

- 파일을 카피해서 toFile로 해보았으나 그래도 lack? 에러가 남.
: 전에 했던 프로젝트는 Crop라이브러리를 사용한 다음에 uri받은것을 toFile해서 되는듯(실제 확인)
CROP    result.uri : file:///data/user/0/com.kidsnote.examtarget/cache/cropped2279498036139754061.jpg
사진촬영 후 가져온 viewModel.contentUri : content://media/external/images/media/44

 

 

* uri를 통한 풀경로 가져오기
: ContentResolver로 query하여 풀 경로를 가져와서 파일로 변환 해보았습니다.

 

Android 11버전 (uri -> fullPath)
content://media/external/images/media/45487 -> /storage/emulated/0/Pictures/1623819366182.jpg
: fullPath를 이용하여 File변환하니 성공.

https://www.masterqna.com/android/96226/%EA%B0%A4%EB%9F%AC%EB%A6%AC-%EC%9D%B4%EB%AF%B8%EC%A7%80-%EC%A0%88%EB%8C%80%EA%B2%BD%EB%A1%9C

 

 

추가로 찾은 것

content: Uri로 실제 이미지를 화면에 보여주고 하는 것은 가능
서버에 전달시 File로 변환하여 Retrofit으로 전달 하고 있음.

: 서버에 전달시 content Uri를 RequestBody로 바로 처리 하는 방법도 있었다.
https://nanamare.tistory.com/178

 

 

참조 :

범위가 지정된 저장소 작업
https://proandroiddev.com/working-with-scoped-storage-8a7e7cafea3
파일 저장
https://www.python2.net/questions-1041897.htm
Android Path(파일경로), Uri 간의 변환
https://srctree.tistory.com/

[Android] Uri Path -> File Path(Real Path)로 바꾸기 및 에러 발생(From Google Photo)
https://g-y-e-o-m.tistory.com/133 : 안드로이드 11에선 막혔다고 한다
-> https://gist.github.com/alexzaitsev/75c9b36dfcffd545c676
-> https://stackoverflow.com/questions/35909008/pick-image-from-gallery-or-google-photos-failing/50253933#50253933

 

 

반응형