기차역, 배민, 야놀자? ㄴㄴ
기본적인 구성 요소
예) 자동차 개발에서 차 프레임, 엔진, 변속기 등
앱 실행을 위한
모바일 운영체제 +앱 개발을 위한
애플리케이션 프레임워크
= 모바일 플랫폼
01. Resource Manager : 프로젝트에서 사용하는 이미지나 미디어를 한번에 확인
02. Build Variants : 빌드 종료 선택
03. Structure : 변수와 함수를 한눈에 확인
04. Profiler : 앱 분석 (CPU, 네트워크 사용량 등)
05. App Quality Insights : Firebase 연결해서 앱 품질 확인 (잘 안씀)
06. TODO : TODO 리스트 관리
07. App Inspection : 데이터베이스 확인
01. F11 : 북마크
Shift + F11 : 북마크 확인
02. Ctrl + D : 한 줄 복사
Gradle
은 안드로이드 앱의 빌드 도구
Gradle의 설정 파일 = build.gradle
build.gradle
파일은 2개가 존재한다.
하나는 프로젝트 단위
빌드 설정
하나는 모듈 단위
빌드 설정
이름 | 설명 |
---|---|
build.gradle | 빌드 설정 파일 |
AndroidManifest.xml | 앱의 메인 환경 파일 |
res | 리소스 폴더 (이미지, 미디어) |
activity_main.xml | 레이아웃 XML 파일 (UI) |
MainActivity.kt | 메인 액티비티 파일 (소스 코드) |
가장 기본적이고 가장 먼저 확인해야 되는 파일
앱의 기본 특징을 설명하고, 앱의 구성요소인 컴포넌트 (액티비티, 서비스 등) 를 정의한 XML 파일
ex) 화면의 개수, 각 화면의 역할
<application> 태그
<application> 태그
하위에 정의- 액티비티의 경우 <activity>
- 서비스의 경우 <service>
- 브로드 캐스트 수신기의 경우 <receiver> 요소
- 콘텐츠 제공자의 경우 <provider> 요소
<activity> 태그
<intent-filter> 태그
- drawable : 이미지 리소스
- layout : UI 구성에 필요한 XML 리소스
- mipmap : 앱 아이콘 이미지
- values : 문자열 등의 값으로 이용되는 리소스
주의할 점
res
하위의 기본 폴더만 사용 가능 (새 폴더 불가)
- 기본 폴더 안에 새 폴더 불가
- 리소스 파일 명에 대문자 불가
- File-based resource names must contain only lowercase a~z, 0~9, or underscore( _ )
aapt도구에 의해 자동으로 생성 된 파일
R클래스는 리소스를 kotlin 프로그램에서 접근하기 위한 리소스 ID를 정의
즉, 리소스 주소를 ID로 사용 (건들 수 없으니 알아만 두자)
소스 코드, 리소스 파일, AIDL 파일과 코드 작성 시 사용했던 라이브러리를 컴파일
-> 소스 코드는 DEX 파일로 컴파일
-> 리소스 파일은 Compiled Resources 파일로 컴파일
-> DEX File(s) + Compiled Resources + Debug or Release Keystore 를
APK Packager 가 .zip로 묶고 확장자를 .apk로 변경