사이드프로젝트(withPet) #1 - 시작

김민태·2024년 5월 30일

withPet

목록 보기
1/6
post-thumbnail

이번 게시글은 프로젝트 시작에 대한 간략한 기록입니다. 본격적인 구현 내용은 2편부터 작성할 예정입니다.


1. 시작

프로젝트의 첫 회의는 디스코드 음성 채널에서 진행되었습니다.
소수 인원이어서 자유롭게 소통할 수 있었고, 다음과 같은 주요 내용을 정리했습니다:

  • 주제: 반려견 정보와 위치를 기반으로 견주와 산책을 매칭해주는 앱
  • 회의 일정: 매주 수요일 퇴근 후
  • 프로세스 상의: 추상적인 흐름 논의
  • 협업 툴: 소통채널(디스코드), 디자인(피그마), 기획 및 관리(노션)

2. 프로젝트 구성 및 생성

프로젝트는 안드로이드 앱으로 개발하며, 프론트엔드 주요 구성 요소로는 Kotlin, Coroutine, Retrofit2을 사용합니다.

이번 글은 본격적인 개발 전 작성된 것으로, 추후 일부 구성 요소는 변동될 수 있습니다. 또한 Firebase App Distribution을 통해 테스트용 Android 앱 배포 및 배포 자동화를 목표로 합니다.

2-1. 최소 SDK 설정

최소 SDK 버전으로 API 레벨 21 (Android 5.0 Lollipop)을 선택했습니다.
현업에서 구형 기기에 대한 대응이 중요하다고 느꼈기 때문에 최소한의 버전을 적용했습니다.

2-2. 빌드 타입 설정

build.gradle 파일에서 빌드 타입을 정의했습니다:

  1. debug 타입: 디버그용, 별도의 설정은 필요 없습니다.
  2. staging 타입: 개발 및 테스트를 위한 배포용 빌드 타입으로 사용됩니다.
  3. release 타입: 추후 스토어에 등록할 빌드를 위한 타입입니다.

2-3. 키스토어 생성 및 브랜치 설정

디버깅을 완료한 후 프로젝트 root키스토어 디렉터리를 생성하고, keystore 파일을 만들어 보안 설정을 완료했습니다.
개발용 브랜치 develop를 생성하여 개발을 시작했습니다.


3. Firebase를 통한 테스트 앱 배포

본격적인 개발에 앞서 배포 환경을 먼저 구성한 후, 앱 개발을 시작하기로 했습니다.

3-1. Firebase 연동

Firebase Console에서 프로젝트를 생성하고, 가이드를 따라 안드로이드 프로젝트에 Firebase를 연동했습니다.

3-2. App Distribution 설정

Firebase Console에 등록된 패키지명과 동일한 패키지명의 apk 파일이 필요했으며,
staging 빌드 타입으로 apk 파일을 생성하여 App Distribution에 업로드했습니다.

3-2-1. 오류 해결

Firebase 연동 과정에서 Execution failed for task ':app:mergeExtDexStaging'. 오류가 발생했습니다.
이 문제는 Firebase Console에서 제공된 Gradle 설정 버전공식문서의 버전 차이로 인한 것이었습니다.
공식문서에 명시된 버전으로 수정한 후 sync하여 문제를 해결하고, 정상적으로 apk 파일을 추출했습니다.

결과적으로 팀원들에게 성공적으로 테스트 앱을 배포할 수 있었습니다.

성공적인 배포


첫 회의와 프로젝트 초기 설정 과정을 마무리했습니다. 이후 개발 및 기능 구현에 대한 내용은 2편에서 다룰 예정입니다.

0개의 댓글