1. 정적폴더 구조 설명
용어 |
설명 |
layout |
화면의 UI를 담당하는 레이아웃 리소스 |
minmap |
애플리케이션 아이콘 등 이미지 |
values |
문자열, 컬러 등 |
- AndroidManifest.xml
속성 |
설명 |
android:allowBackup |
애플리케이션의 데이터를 백업하고 복원할지 여부 이 속성의 기본 값은 true |
android:icon |
애플리케이션의 아이콘과 각 애플리케이션의 구성 요소인 <activity>, <activity-alias>, <service>, <receiver>, <provider>에 대한 기본 아이콘 |
android:label |
전체 애플리케이션에 대한 사용자가 읽을 수 있는 레이블과 각 애플리케이션의 구성 요소인 <activity>, <activity-alias>, <service>, <recevier>, <provider>에 대한 기본 레이블입니다. |
android:roundicon |
안드로이드 7.1에 추가된 속성으로 원형 아이콘이 적합한 경우에는 원형 아이콘을 사용 |
andriod:supportsRtl |
애플리케이션이 오른쪽에서 왼쪽으로 (RTL) 레이아웃을 지원할지 여부를 선언합니다. 이 속성은 기본값은 false |
android:theme |
기본 테마 스타일을 설정하는 속성 Activity마다 다르게 설정 가능 |
- 빌드 정보와 환경설정 정보를 가지고 있는 Gradle Scripts
- build.gradle
'build.gradle' 파일에는 'android' 와 'dependencies' 두가지로 요소가 있다.
android 요소들은 빌드할 때 android 설정ㅈ과 관련한 요소이다.
속성 |
설명 |
compileSdkVersion |
Gradle이 앱을 컴파일하기 위해 사용해야하는 Android API 레벨을 지정 |
buildToolsVersion |
Gradle이 앱을 빌드 할 때 사용하는 SDK빌드 도구, command-line 유틸리티 및 컴파일러의 버전을 지정 SDK 관리자를 사용하여 빌드 도구를 다운로드 |
defaultConfig.applicationid |
게시할 패키지를 고유하게 식별하기 위한 속성 AndroidManifeest.xml 파일ㅇ의 package 속성에 정의된 패키지 이름을 참조 |
defaultconfig.minSdkVersion |
앱을 실행하는데 필요한 최소 API 레벨 |
defaultConfig.targetSdkVersion |
앱 구현에 사용되는 API레벨을 지정 |
defaultConfig.versionCode |
앱의 버전을 정의 |
defaultConfig.versionName |
앱의 버전 이름을 정의 |
defaultConfig.testinstrumentaionRunner |
기본 테스트 계측 실행기를 설정 |
' dependencies'는 이 애플리케이션이 작동하기 위해 필요한 라이브러리들을 적는 곳
라이브러리 |
설명 |
com.android.support:appcompat |
AppComapt이라고 불리는 라이브러리 AppCompat은 하위 버전에서도 최신 버전의 UI를 지원하기 위해 사용 |
com.android.support.constraint:cinstraint-layout |
ConstraintLayout은 멀티해상도를 좀 더 쉽게 지운하기 위하여 최근 추가된 레이아웃 UI요소를 'Constraint' 라는 제약으로 관리하기 때문에 다양한 화면에 대응이 가능 |
2. MainActivity.java 수정하기
-> Tosat.makeText(getApplicationContext(), "프로그래밍 시작!!", Toast.LENGTH_LONG).show(); 추가 및 Import (Alt+Enter 입력하면 됨)
3. 한줄 주석, 여러줄 주석, JavaDoc 주석
- MainActivity.java
-> JavaDoc 주석 확인하기 위해서는 Ctrl+Q
- styles.xml
-> xml에서의 주석은 <!-- --> 이다.
4. 시작점(Entry Poin)과 매니페스트(Manifest) 파일
- 안드로이드는 단일 진입점을 가지고 있지 않다.
- Android 4대 컴포넌트
컴포넌트 |
설명 |
Activity |
Activity는 화면에 포커싱되어 사용자와 상호 작용을 하는 컴포넌트 |
Service |
Service는 백그라운드에서 실행되는 구성 요소로, 오랫동안 실행되는 작업을 수행하거나 원격 프로세스를 위한 작업을 수행 이는 백그라우든에서 작업되는 것이기 때문에 사용자 UI를 제공하지 않음 |
BoardCastRecevier |
BoardCastReceiver는 시스템 변경 사항의 알림을 받기 위해 존재 |
ContentProvider |
안드로이드에서 각 앱은 자신의 데이터만 볼 수 있다. 만약 다른 앱이 자신의 데이터를 변경할 수 있도록 허용하면 보안에 위험 하지만 경우에 따라서는 자신의 앱의 데이털르 다른 앱에게 공유를 해야하는 경우도가 잇는데 이때 사용되는것 데이터를 제공할 앱의 ContentProvider를 통해서만 데이터를 ㅈ제공받는다. |
5. 컴포넌트 진입점 추가해보기
이 내용을 메인에서 메인2로 옮기면 앱실행시 메인2가 기본설정으로 되어버린다.
'App > 안드로이드' 카테고리의 다른 글
Singleton 패턴 및 Obejct 클래스 / Data Class / 내부/중첩 클래스 (0) | 2019.04.10 |
---|---|
Getter/Setter / Property와 Field / 클래스 상속/위임 / 프로퍼티 위임(lazy, observable, map) (0) | 2019.04.08 |
코틀린(Kotlin) 특징 (0) | 2019.04.06 |
버튼 구현 / 데이터 타입 / 제약정보 추가 / 접근제어자 (0) | 2019.04.06 |
설치 및 안드로이드 첫 실행 (0) | 2019.04.05 |