문과 코린이의, [Android] 기록/Kotlin 이론

[문과 코린이의 IT 기록장] Android Kotlin - Android Studio 개발 환경 준비하기 (프로젝트 설정, Android Studio 화면 구성, SDK 매니저, 앱 출시 과정)

벼리네 2023. 5. 12. 14:26
반응형

[문과 코린이의 IT 기록장] Android Kotlin - Android Studio 개발 환경 준비하기 (프로젝트 설정, Android Studio 화면 구성, SDK 매니저, 앱 출시 과정)

[문과 코린이의 IT 기록장] Android Kotlin - Android Studio 개발 환경 준비하기 (프로젝트 설정, Android Studio 화면 구성, SDK 매니저, 앱 출시 과정) 

 


1. 프로젝트 설정

- Package name : 앱의 식별값. (패키지명)

- Save Location : 프로젝트의 파일들이 저장되는 루트 디렉터리 

 * C:\에는 쓰기 권한이 없을 수 있기 때문에, C:\ 하위에 디렉터리를 하나 만들고 그 곳으로 지정해야 함

- Language : 안드로이드 앱을 어떤 언어로 개발할지 나타냄. (Kotlin / Java)

 * Kotlin으로 지정했어도, Java 파일을 언제든지 추가 가능. 즉, 지정한 언어로 프로젝트의 기본 소스 파일 및 설정이 추가되는 것이지, 꼭 그 언어로만 개발해야하는 것은 아님.

- Minimum SDK  최소 SDK 버전

- Use legacy android.support libraries 체크박스 : android.support 라이브러리를 사용할 것인지 선택하는 옵션

 * 구글은 Android 앱 개발을 지원하고자, 다양한 라이브러리를 제공함. 이를 서포트 라이브러리라고 함.

 * 현재 서포트 라이브러리는, 제트팩(JetPack)의 androidx 라이브러리로 통합됨. (11장)

 * 새로 만드는 앱이라면, 굳이 support 라이브러리를 사용할 필요 X

 


2. Android Studio 화면 구성

1) 툴바 : 앱을 실행하거나, 안드로이드 도구를 시작하는 다양한 작업 아이콘이 있습니다.

2) 탐색 메뉴 : 프로젝트를 탐색하고, 수정할 파일을 열 수 있습니다.

3) 편집기 창 : 코드를 작성하고 수정할 수 있습니다.

4) 도구 창 모음 : 창 양 옆과 아래쪽에 개별 도구 창을 열거나 닫을 수 있는 버튼이 있습니다.

5) 프로젝트 창 : 프로젝트 파일을 관리할 수 있습니다.

6) 상태 표시줄 : 프로젝트와 안드로이드 스튜디오의 상태 및 경고 메시지 등을 보여 줍니다.

 


3. SDK 매니저

- Android SDK : Adnroid Software Development Kit (안드로이드 소프트웨어를 개발하기 위한, 툴 킷)

- 구성요소

1) Android API : 개발자들이 안드로이드 개발을 손쉽게 하도록 접근을 허용하는 Android API들

2) Android 응용 프로그램 개발에 필요한 각종 도구들 : 안드로이드 소스 코드를 실행 가능한 어플리케이션으로 만들기 위한, 컴파일러나 에뮬레이터 등

3) 샘플 코드들 : 안드로이드 API 사용법을 이해시키기 위한 예제 프로그램 코드들

4) 관련 문서들 : SDK를 사용하기 위한 각종 패키지나 클래스에 대한 설명 등

 

(1) SDK Platform

- SDK Platform 에서는 안드로이드 SDK 목록을 확인 가능하다.

- Android Studio를 설치할 때, 최신 버전의 SDK가 기본으로 설치된다.

 * 일반적으로는 최신 버전의 SDK로 개발하지만, 더 낮은 버전에서 테스트할 수도 있다. (ex. 호환성 테스트)

 

(2) SDK Tools

- SDK Tools에서는 개발자 도구들이 표시된다.

이름 용도 설치 여부
Android SDK Build-Tools 32-rc 1 앱을 빌드하는데 필요한 도구 필수 설치
Android Emulator 앱을 실행하는데 필요한 도구
Android SDK Platform-Tools 안드로이드 플랫폼과 연동되는, adb, fastboot, systrace와 같은 도구 모음
Android Emulator Hypervisor Driver for AMD Processors (Installer) AMD용 하이퍼바이저 드라이버 AMD CPU라면 설치
Intel x86 Emulator Acceleator 
(HAXM installer)
인텔 에뮬레이터 가속기
* CPU가 가상화 기술을 지원해야 하며, 이를 활성화(BIOS 설정) 해야함.
인텔 CPU라면 설치

 


4. 앱 출시 과정

a. 프로젝트의 여러 파일을 하나로 묶어서 배포

b. 배포 파일을 여러 사람이 내려받을 수 있도록, 스토어에 등록

1) Android App 배포 파일

(1) APK(Android application PacKage)

: 안드로이드의 전통적인 배포파일.

: 컴파일된 코드와 리소스를 묶어 키로 서명한 것

 

(2) AAB(Android App Bundle)

: 구글 IO에서 2018년 발표한, 새로운 안드로이드 앱 배포 파일

: 플레이스토어에 올리면, 사용자 기기에 맞게 최적화된 APK를 대신 만들어줌.

: 즉, 사용자 기기에 내려받아 앱을 설치하는 파일은 똑같이 APK이지만, 개발자가 직접 APK 파일을 만들지 않고, 플레이스토어에서 만드는 것

: 따라서, 사용자는 기기에서 필요한 파일만 내려받게 됨.

 * 앱을 실행할 때, 앱에 포함된 모든 파일이 사용되지 않는다. 

 ex. 앱을 개발할 때, 크기가 다른 여러 기기에서 실행할 수 있도록 이미지 리소스를 크기별로 준비하지만, 앱을 내려받은 기기에서는 그 크기에 맞는 1가지 이미지만 이용한다. (언어도 마찬가지)

 

 # 현재 구글에서는 플레이스토어에 새로운 앱을 게시할 때, AAB를 사용해야 한다 발표

 

2) 배포 파일을 만들기 위한, 키 생성 및 앱 서명

(1) 서명 키를 개발자가 직접 만들어 관리하는 방법

- 개발자가 만든 서명키 1개로 앱을 관리함.

- 단점 : 개발자가 키를 분실하거나 도용될 때, 대처가 불가능하다. 즉, 업데이트시 이전 버전과 같은 키로 서명해야하기 때문에 업데이트 진행이 불가능하다. (새로운 키 생성시, 완전히 새로운 앱으로 등록)

 

(2) 서명 키를 구글 Play에서 관리하는 방법

- (1)의 단점을 극복하고자, Play 앱 서명이라는 서비스를 만듦.

- 구글 Play앱 서명 방식은, 키를 2개로 구분함.

 a. 개발자가 만들고 관리하는 업로드키 (기존 서명키)

 b. 구글 Play가 만드는 앱 서명키 * 구글 Play에 등록할 때만 사용하는 업로드 키 => 사용자에게 전달

- 이와 같이 키가 구분되어 있어서, 만약 개발자가 키를 분실하거나 도용되더라도, 앱을 계속 업데이트가 가능하다.

 

3) 플레이 스토어에 앱 배포 전 준비해야 할 파일

- AAB 파일 : 완성한 앱을 서명한 배포 파일

- 앱 아이콘 이미지 : Play 스토어에 표시할 앱 이미지. (512 x 512 px / 1MB 미만 / JPEG or 32bit PNG)

- 그래픽 이미지 : Play 스토어에서 앱을 프로모션할 때 이용할 이미지 (1024 x 500 px / 1MB 미만 / JPEG, 24bit PNG)

- 휴대전화 스크린샷 : 스마트폰에서 앱을 실행한 스크린샷  (320~3840 px / 비율 16:9, 9:16 / 1개 당 8MB 미만 이미지를 최대 8개 / JPEG나 24bit PNG)

- 7인치 10인치 태블릿 스크린샷 : 7인치나 10인치 태블릿에서 앱을 실행한 스크린샷.(320~3840px / 비율 16:9, 9:16 / 1장당 8MB 미만 이미지를 최대 8개 / JPEG or 24bit PNG)

 

 

반응형