반응형
반응형

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 에서 바로 아이폰 기기에서 앱을 실행할 수 있게 된다.

반응형

프로젝트 생성 이후 실행에는 문제없지만 아래 에러들이 생겼다.

 

Cannot resolve symbol 'Properties'

Cannot resolve symbol 'GradeException'

 

먼저 File > Project Structure 로 들어간 후

 

좌측 메뉴에서 Modules에 프로젝트명_android가 빨간줄로 표시되어 있는 것을 확인 할 수 있다. 해당 부분에서 Dependencies 항목에 들어간 후 Module SDK 가 No SDK로 되어있는 부분을 올바른 SDK를 선택해주면 해결 가능하다.

 

이 이후에 Cannot resolve symbol 'Properties' 의 에러는 사라졌지만 Cannot resolve symbol 'GradeException' 에러는 여전히 존재한다. GradleException는 Android API 29 부터 FileNotFoundException으로 대체되었기 때문에 직접 수정해주면 모든 에러가 사라진다.

반응형

+ Recent posts