플러터로 외주 하면서 삽질한 것 기록
1. 사진을 찍되 앱 내에서만 보여야 함. 갤러리 앱에서 보이면 안 됨
1. 내부 저장소에 저장하면 됨
1. image_picker 라이브러리가 flutter 팀에서 관리하고 있는 공식 라이브러리라서 선택 함
https://pub.dev/packages/image_picker
이 라이브러리를 사용하여 기기의 카메라 앱을 통해 사진을 찍으면 외부 저장소에 파일을 저장하고 플러터 측에 그 File 객체를 돌려 줌
2. 우리는 갤러리에 앱이 보이면 안 되기 때문에 저장된 파일을 앱 내부 저장소로 복사하고 기존 저장된 사진은 삭제함
3. 픽셀, 픽셀 XL 에서 잘 되는 것 확인
1. LG V50 ThinQ 폰에서는 갤러리에 사진이 남는 현상이 발생
2. 라이브러리로 넘겨 받은 파일을 복사 후 지우고 있는데 안 지워짐. 이상하다
3. 위 라이브러리를 뜯어 고치기 시작함. 애초에 내부저장소에 사진이 저장되도록 수정함.
4. 그래도 이 엘지폰은 사진을 남김. 왜 찍은 사진이 안 지워지는거냐~
5. 안 지워지는게 아니라 이 엘지폰 카메라 앱은 셔터를 누르는 순간 /storage/emulated/0/DCIM/Camera/ 에 맘대로 저장을 해 버림
4. 암시적 인텐트를 통한 방법은 이 엘지폰에서 대응할 방법이 없다고 판단됨
5. 자체적으로 사진을 찍기 위해 카메라를 내장한 다른 라이브러리를 찾음
https://pub.dev/packages/adv_image_picker
자기만 쓰려고 만든 느낌이 있음.
암시적 인텐트가 아닌 카메라 API를 조작해서 사진을 찍음.
1. 위 라이브러리를 플러터 프로젝트로 끌고 들어와서 필요한 부분의 코드와 UI 수정 후에 내부 저장소로 저장되도록 수정해서 써서 해결함
플러터 프로젝트에서 카메라를 쓰면서 보안 관련된 요구사항이 있는 경우 도망가자