코딩하는 개굴이

[안드로이드] Fastlane으로 Firebase에 Android 앱 배포하기 본문

안드로이드

[안드로이드] Fastlane으로 Firebase에 Android 앱 배포하기

개굴이모자 2021. 3. 21. 21:19
반응형

Fastlane 적용하기

fastlane 설치하기

//Ruby
sudo gem install fastlane -NV

//Brew -> 왜인지 본인은 안되어서 ruby로 수행
brew cask install fastlane

//설치 후 fastlane 버전 확인
fastlane env

//fastlane 을 적용하려는 project의 repo 로 이동
cd project

fastlane init
//package name 입력하라고 뜰 텐데, 해당 project 의 package name을 입력
> com.sample.app

//JSON secret file path 설정은 후에, 다시 해도 되므로 ENTER 입력
//metadata, screenshots, build~ 라는 내용의 옵션 설정 또한 후에 할 후 있으므로, n을 누른다.

//후에 성공 시, setup 한 것의 확인을 위해 테스트를 수행
fastlane test
//정상일 경우 [01:34:10]: fastlane.tools finished successfully 🎉 라는 문구 확인 가능

fastlane 설정

fastlane add_plugin firebase_app_distribution 명령어를 실행한다. 중간에 path 구성을 해줄지 물어보는데 y를 누른다.

Firebase 인증

플러그인의 로그인 작업을 통해 Google 계정에 인증하는 방법을 사용하였다.

안드로이드 프로젝트 terminal에서 bundle exec fastlane run firebase_app_distribution_login을 실행한다.

"Open the following address in your browser and sign in with your Google account : ~" 뒤에 출력되는 링크를 클릭하여 firebase 계정에 로그인한다.

RefreshToken


토큰을 복사하여 안드로이드 프로젝트 terminal 의 "Enter the resulting code here: " 에 붙여넣는다.

후 Fastfile 설정 시 사용하기 위해 Firebase_Token 환경변수를 설정한다. export FIREBASE_TOKEN=token

Fastlane 배포

//아래 내용을 추가하여 간단한 lane 을 생성하였다.
  desc "Lane for distribute"
     lane :distribute do
        gradle(task: "clean assembleRelease")
        firebase_app_distribution(
              app: ENV['FIREBASE_APP_ID'],
              release_notes_file: "release_notes.txt",
              debug: true
        )
  end

아까 넘어간 JSON secret file 업보

secret file을 집어넣어 보자.

API 액세스

다이얼로그의 3번을 클릭하고 들어와서 서비스 계정을 만든다.

서비스 계정만들기서비스 계정 만들기

자유롭게 이름과 ID 등을 입력한다. 역할 선택 시 서비스 계정 사용자를 선택한다.

서비스 계정 만들기 2key만들기

비공개 키를 만들어 다운로드 한다.

  • api access로 돌아가서 보기 액세스 권한 > 앱 권한 > 해당 프로젝트 추가 > 사용자 초대
  • 아까 받은 json 파일의 path 를 명령어에 입력한다. 가독성을 위해 이름을 "api-play-store-key.json"로 바꾼 후 프로젝트의 root 디렉토리 아래 넣는다.bundle exec fastlane run validate_play_store_json_key json_key:/path/to/your/downloaded/api-play-store-key.json
  • AppFile 내용에서 json 파일 이름으로 수정한다. json_key_file("./api-play-store-key.json")
  • fastlane distribute 로 추가한 lane 을 실행한다.

  • 짠 드디어 성공이다.
  • Firebase App Distribution에서 올라간 것을 확인할 수 있다.

  • 해당 과정은 파이어베이스를 이용해 특정 테스터 및 그룹에게 release 배포 등을 하기 위한 목적으로 구글 플레이에 자동 배포 되지는 않는다. :)

참고 링크

반응형
Comments