• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

질문있습니다.!

21.10.20 15:42 작성 조회수 121

0

imageManager.requestImage 메소드에서 저화질 일 경우 

마지막 클로저 함수에서 info dictionary에서 PHImageResultIsDegradedKey값이 1 이라고 하셨는데

 deliveryMode 를 fastFormat으로 설정하면 값이 0이 나오는데 맞는 건가요?

강의에서 fastFormat모드는 저화질 모드라고 하셔서 궁금해서 질문 드립니다.

그리고 하나 더 질문 있습니다 ㅠㅠ.

checkPermission함수에서 

왜 DispatchQeue.main.async를 사용 했는 지 잘 모르겠습니다.

답변 1

답변을 작성해보세요.

0

안녕하세요.

 

PHImageResultIsDegradedKey값이 1인 경우 지금 주는건 저화질로 주는거고 바로 고화질로 한번 더 줄거다 라는 표시라고 생각하면 됩니다.

그래서 저화질만 주고 끝나는 fastFormat, 고화질만 주고 끝나는 highQualityFormat 이 두개는 더 줄게 없으니  PHImageResultIsDegradedKey값이 무조건 0이 나오게 됩니다.

 

그리고 DispatchQeue.main.async도 지금 다시 보니 메인스레드 말고 다른 스레드를 만드는 코드가 없는데 써놨네요. 안써도 전혀 상관 없습니다.

 

제가 설명을 잘못한 부분이 좀 있어 혼란스럽게 해드린 것 같아 죄송하고 답변이 도움 되셨길 바랍니다.