가을기 Workspace

[플러터] iOS 배포 준비하기 본문

개발/개인앱

[플러터] iOS 배포 준비하기

가을기_ 2021. 10. 9. 03:09

기존 안드로이드 앱이 있다는 전제하에 진행

 

1. Certificate 지정하기

Runner > Tagets, Runner > Signing & Capabilities 에서 Team을 자신의 계정으로 등록 

 

 

2. admob id 지정

ios > Runner > info.plist를 열어서 GADApplicationIdentifier 와 admob id를 지정한다.

 

3. firebase 설정하기

해당 파일을 안내하는대로 저장

flutter의 경우 {project}/ios/Runner/GoogleService-info.plist 에 저장하면 되겠다.

주의!

Runner > Runner 로 파일을 추가해야한다. 안그러면 앱이 크래시가 난다.

망할 ios 드럽게 불편하네 진짜

 

- firebase dependency 추가

Podfile target Runner 부분에 아래와 같이 pod dependency 추가

target 'Runner' do
  use_frameworks!
  use_modular_headers!

  # add the Firebase pod for Google Analytics
  pod 'Firebase/Core'
  pod 'Firebase/Analytics'
  pod 'Firebase/Messaging'
  # or pod ‘Firebase/AnalyticsWithoutAdIdSupport’
  # for Analytics without IDFA collection capability

  # add pods for any other desired Firebase products
  # https://firebase.google.com/docs/ios/setup#available-pods


  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

이후 dependency install

$ pod install

 

>> flutter ios build 시 firebase not found 문제라면

target 밖으로 꺼내서 platform 아래 바로 두자.

- firebase 초기화

마지막으로 ios > Runner > AppDelegate.swift를 열어서 강조한 부분 코드를 추가하면 끝.

 

 

 

 

4. 앱 이름 l10n 적용하기

먼저 프로젝트 전체에 l10n을 적용해야한다.

Runner > Project Runner 로 찾아간 뒤 Localization에서 + 버튼을 눌러 지원하는 언어를 추가할 수 있다.

 

이후 Runner > Runner > InfoPlist.strings 파일을 추가

localization을 추가했음을 확인한 후

 

InfoPlist를 펼쳐보면 위와 같이 언어별로 설정할 수 있도록 파일이 추가되어 있다.

각 언어에 맞춰서 "CFBundleDisplayName" = "앱 이름"; 을 입력하면 된다.

 

 

5. 앱스토어 테스트 디바이스, 프로필 설정

https://ios-development.tistory.com/249

 

[iOS 앱 배포 준비] Device 등록, UDID

배포 준비 핵심 -개념: ios-development.tistory.com/246 Certificates 생성 및 실행하여 xcode에 등록 AppID 등록 Device 등록 Provisioning Profiles 등록 UDID 복사 테스트 할 device를 맥북에 연결 -> Xcode..

ios-development.tistory.com

 

 

6. 앱스토어 등록 및 배포

https://ios-development.tistory.com/299

 

아래 글 참조

https://actumn.tistory.com/101?category=903615 

 

[플러터] ios 앱 출시하기

앱스토어 계정은 모두 활성화 되어 있다고 가정 앱 릴리즈 빌드 확인 $ flutter build ios 프로젝트 우클릭 >Open iOS module in Xcode build mode를 debug → release로 변경해야한다. xcode → Runner 클릭 →..

actumn.tistory.com

 

 

7. iOS device_info not found 문제

https://github.com/flutter/flutter/issues/53573#issuecomment-765013525

 

[ios] [flutter] GeneratedPluginRegistrant.m Module not found. · Issue #53573 · flutter/flutter

Any pub package which I have used in my project generates the same error. XCode Version 11.4 COCOAPODS: 1.9.1

github.com

 

 

8. flutter build 에러 대응

# 1. ios 빌드 캐시 삭제
cd ios/
rm Podfile.lock
rm Podfile
rm -rf Pods

pod cache clean --all

# 2. flutter 캐시 삭제 및 dependency 재설치
cd ..
flutter clean
flutter pub get

# 3. pod 재설치
cd ios/
pod install

https://hijigoo.github.io/flutter/2021/05/05/error-tip-01/

 

Flutter - 빌드에러 대응 · 안녕지구

Flutter - 빌드에러 대응 05 May 2021 | Flutter Error Flutter에서 버전 업그레이드나 다운그레이드를 하다보면 아래와 같이 빌드 에러가 발생하는 경우를 볼 수 있습니다. 보통 이런 경우 cache 되어 있는 파

hijigoo.github.io

 

9. easy_localization 적용

- file: ios/Runner/info.plist

<key>CFBundleLocalizations</key>
<array>
	<string>en</string>
	<string>nb</string>
</array>

ios면 위와같이 추가적으로 지원하는 locale 적용 필요

 

Comments