Android Studio로 Flutter 개발 도중 아이폰으로 실행 시 하얀 화면만 출력되었다. 우선 Flutter로 개발 시 기기 실행은 Release 모드만 가능하다고 메세지가 출력되고 네트워크 관련 오류 메세지가 출력된다. 이를 해결 하기 위한 방법으로 flutter 문서의 아래 링크를 참고했다.
https://docs.flutter.dev/development/add-to-app/ios/project-setup#local-network-privacy-permissions
Integrate a Flutter module into your iOS project
Learn how to integrate a Flutter module into your existing iOS project.
docs.flutter.dev
1. Info.plist 파일 분기 처리
기존의 Info.plist 파일을 Info-Debug.plist 로 수정한 뒤 Info-Release.plist 라는 복사본을 만든다.
2. Info-Debug.plist 에서 필요한 키 값을 추가한다.
총 2개를 추가하는데
Bonjour services - { Item 0 : _dartobservatory._tcp }
Privacy - Local Network Usage Description - "표시 될 메세지"
를 추가하면 된다.
3. 프로젝트의 Info.plist 경로 변경
위에서 기존의 Info.plist의 이름을 변경하고 분리하였으니 이에 대한 설정을 추가해준다.
Packaging - Info.plist File 항목을 찾은 뒤
우리가 변경했던 plist 파일의 이름으로 변경해준다. 문서에서는 path/to/Info-$(CONFIGURATION).plist 로 변경하게 되면 자동으로 처리된다고 했지만 문서에서는 Profile이 존재하지 않는 버전인것 같다. 나는 Profile에 관련된 plist를 만들지 않았기 때문에 release로 입력해주었다.
4. Info-Release.plist 복사본이 리소스 복사 빌드 단계에 있는 경우 제거
build Phases - Copy Bundle Resources 로 이동한 뒤
위 항목중에 Info-Release.plist 가 포함되어 있는 경우 해당 항목을 제거해준다.
위 절차로 진행하게 되면 굳이 Xcode를 실행한 후 release모드로 변경 후 실행할 필요 없이 Android Studio 에서 바로 아이폰 기기에서 앱을 실행할 수 있게 된다.
'Flutter' 카테고리의 다른 글
[Flutter] 프로젝트 생성 이후 app build.gradle 에러 (1) | 2022.12.26 |
---|---|
[Flutter] macOS에 Flutter 설치하기 with Android Studio (0) | 2021.12.23 |