사진이 나오지 않는다!?
크롬이나 모바일 에뮬레이터에서는 해당 이미지가 잘 나오고 있었는데 맥에서는 나오지 않는 문제를 확인했다!!
그래서 에러 로그를 확인해보니
══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════
The following SocketException was thrown resolving an image codec:
Connection failed (OS Error: Operation not permitted, errno = 1), address = flutter.github.io, port
= 443
SocketException이 발생했고 https 연결 포트인 443번 포트로 연결이 실패했다는 메시지였다.
구글링을 해보니
macOS에서 네트워크에 접근하려면 특정 사용 권한을 요청해야 한다고 나와있다.
그러기 위해선 marchem/Runner/DebugProfile.entitlements 파일에서 다음과 같은 키-쌍을 추가하라고 나와있다.
<key>com.apple.security.network.client</key>
<true/>
com.apple.security.network.client은 macOS 10.7 이상에 해당하는 속성 목록으로 앱에서 네트워크 연결을 열 수 있는 여부를 나타내는 boolean 값으로 앱이 다른 컴퓨터 또는 동일한 컴퓨터에서 실행 중인 서버 프로세스에 연결할 수 있게 해 준다고 되어있다.
com.apple.security.network.server은 앱이 들어오는 네트워크 연결을 수신 대기할 수 있는지 여부를 나타내는 부울 값으로 flutter create 시 이미 true으로 선언되어 있다.
위에 내용 처럼 키-쌍을 추가하고 다시 실행하면
외부 이미지가 잘 불러와진다!
[참고]
SocketException: Connection failed (OS Error: Operation not permitted, errno = 1) with flutter app on macOS
I have following code in my Flutter app where MyDataLoader is a widget which starts up from main.dart Code: import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; class
stackoverflow.com
'IT > 기록' 카테고리의 다른 글
[Flutter] 프로젝트 패키지명 및 앱이름 변경하기 (0) | 2022.06.10 |
---|---|
[Flutter] 첫 앱 게시 삽질기 #2 앱 상태 프로덕션 (0) | 2022.06.09 |
[Vue] Mac에서 Vue-Cli 설치하기 (0) | 2022.06.09 |
[Flutter] 첫 앱 게시 삽질기 #1 잘 게시 되길 바라며 (0) | 2022.06.07 |
[Flutter] 화면 전환 (0) | 2022.06.02 |