10. [다이얼로그와 알림 이용]
[10. 다이얼로그와 알림 이용] -앱에서 사용자에게 ‘특정한 상황’을 알려야 할 때가 있다. -앱에서 사용자에게 ‘특정한 상황’ 알릴 때, 소리/진동/다이얼로그/알림 등을 이용한다. [10-1. API 레벨 호환성 고려하기] [API 호환성 고려] targetSdk: 이 앱을 개발한 API 버전 minSdk: 이 앱 동작을 지원하는 최소 API 버전 -앞서 build.gradle 파일 속 SDK 버전 설정에서 targetSdk, minSdk 설정을 한 적 있다. -즉, 앱 개발 시 minSdk 설정값보다 상위 버전에서 제공하는 API를 사용할 경우 호환성 고려 [ API 호환성 애노테이션] : @RequiredApi 애노테이션 -API 레벨 호환성에 문제가 있는 API 사용한 함수/클래스 선언부에 추가..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 10.
09. [리소스 활용]
[09. 리소스 활용] [09-1. 리소스 종류와 특징] -리소스: 정적인 자원. 변경되지 않는 정적 콘텐츠. 리소스로 분리해서 외부 파일로 만듬 -리소스 구분 : 앱 리소스/ 플랫폼 리소스 [앱 리소스 사용] -앱 리소스 :앱 개발자가 res 디렉토리에 직접 리소스 추가하는 것 -res 디렉토리 아래에 개발자가 임의로 이름붙인 디렉토리는 X. 하위 티렉터리 추가 X -리소스 그대로 사용 X. R.Java 파일에 식별자로 등록해서 이용 [앱 리소스 종류] animator 속성 애니메이션 XML anim 트윈 애니메이션 XML color 색상 상태 목록 정의 XML drawable 이미지 리소스 mipmap 앱 실행 아이콘 리소스 layout 레이아웃 XML menu 메뉴 구성 XML raw 원시 형태로 ..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 9.
08. [사용자 이벤트 처리하기]
[08. 사용자 이벤트 처리하기] - 앱 : 화면에서 발생하는 다양한 사용자이벤트 처리하며 상호작용하는 구조 [08-1. 터치와 키 이벤트] [터치 이벤트] : onTouchEvent() 함수 -터치 : 앱 화면에서 발생하는 사용자 이벤트 -콜백함수 : 시스템에서 자동 호출되는 함수 -액티비티에서 onTouchEvent() 함수 재정의하여 선언해놓으면 사용자가 해당 액티비티 화면 터치하는 순간 onTouchEvent() 함수가 자동 호출됨. -이 함수 매개변수는 MotionEvent 객체. 이 객체에 ‘터치 종류’ ‘발생 좌표’ 담김 즉, 터치 이벤트 종류/발생 좌표를 MotionEvent 객체로 얻음 ▶[터치 이벤트 종류] ACTION_DOWN 화면 손가락으로 ‘누른 순간’ 이벤트 ACTION_UP 화..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 9.
07. [뷰를 배치하는 레이아웃]
[07. 뷰를 배치하는 레이아웃] -레이아웃 클래스 : 다르 뷰 객체들 담아서 제어하는 컨테이너 역할. [07-1. 선형 배치] : LinearLayout 클래스 [LinearLyout 배치 기본 규칙] -LinearLayout : 담고 있는 뷰 객체들을 방향 기준 선형 나열 레이아웃 -기본적으로 ‘뷰 객체’ 추가한 순서대로 일렬로 나열. -화면에서 벗어나도 자동 줄 바꿈 X - 에 속성값 지정하여 선형 나열의 ‘방향’을 지정 ▷[방향 지정 속성값] vertical 세로 나열 hroizontal 가로 나열 [LinearLayout 레이아웃 충접 구조] : 복잡한 화면 구성 가능 -레이아웃 클래스도 역시 뷰 객체이므로, 내부에 다른 레이아웃 객체 포함 O [여백 채우기 속성] : -각각의 뷰 객체에 설정한..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 8.
06. [뷰를 이용한 화면 구성]
[06. 뷰를 이용한 화면 구성] [06-1. 화면 구성 방법] [액티비티 – 뷰 구조] -안드로이드 앱 = 컴포넌트들의 조합 -액티비티 : 유일하게 화면을 출력하는 컴포넌트. (단, 그 자체가 화면 X) : 화면 구성 필요. (-> 뷰(View) 클래스 이용) - 액티비티가 실행-> 화면 구성한 뷰 클래스들 이용-> 기기 화면에 출력하는 구조 [액티비티에 화면 구성 방법 2가지 ] ① 액티비티 코드로 작성하는 방법 -액티비티 클래스 안에서 직접 레이아웃 짜고 (필요한 뷰 객체) 화면 구성 코드를 직접 작성 -> 그 레이아웃 배치를 setContentView() 로 화면에 출력 ② 레이아웃 XML 파일로 작성하는 방법 (사용 多) -화면 구성은 XML태그로 짜고 그 XML 파일을 액티비티 클래스 코드 안..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 7.
2강. [코틀린 고급 문법]
[2강. 코틀린 고급 문법] 1. 람다함수 [람다함수] val a : (Int, Int) -> Int = {x:Int, y:Int -> x + y} 함수 타입 변수 = 타입에 일치하는 람다식 저장 typealias MyType = (Int, Int) -> Boolean val a : MyType = {no1: Int, no2: Int -> no1 > no2 } //1. Lamda 람다 함수 : 익명 함수 //람다식 그 자체를 값(value) 처럼 다룰 수 있는 함수 //코틀린에서는 고차함수 개념 존재 //고차함수 : 람다식(함수) 형태를 값 처럼 매개변수, 반환 타입에 적용해놓은 함수 //람다의 기본 정의 //val lamdaName : Type = {argumentList -> codeBody} val..
- App(앱)_관련 공부 모음/[문법]_Kotlin(코틀린)
- · 2022. 3. 5.
05. [코틀린의 유용한 기법]
[05. 코틀린 유용한 기법] [05-1. 람다 함수와 고차 함수] [람다 함수] : 익명 함수 -주로 함수를 간단하게 정의할 때 사용 -코틀린에서는 고차함수를 지원함. 고차함수는 매개변수나 반환값에 ‘함수’를 이용함. -즉, 람다함수는 고차함수를 이해하기 위해 알아야 함. [람다 함수 선언과 호출] : { 매개변수 -> 함수 본문 } -{} 중괄호 사용, ( fun 키워드 사용X) -함수 이름 없기 때문에, 함수명으로는 호출 X 1) 람다함수를 변수에 대입해서 사용 val sum = { no1: Int, no2: Int -> no1 + no2} 2)람다함수 선언과 동시에 호출해서 사용: 바로 뒤에서 소괄호()로 호출 {no1: Int, no2 : Int -> no1 + no2 } (10, 20) 3) ..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 4.
04.[ 코틀린 객체지향 프로그래밍]
[04. 코틀린 객체 지향 프로그래밍] [04-1. 클래스와 생성자] [클래스 선언] : class 키워드로 선언 -본문 없이 선언부만 있는 클래스의 의미 : 코틀린에서는 클래스의 생성자를 선언부에 작성O -클래스 멤버 = 생성자/변수/함수/클래스 구성 class 클래스명 { //본문 } [생성자 선언] : constructor 키워드로 선언한 함수 class User { //변수 선언 var name = “kkang” //생성자 constructor(name:String) { this.name = name } //함수 fun someFun(){ } //다른 클래스 class SomeClass{ } [클래스 생성] : 클래스명 함수로 객체 생성( new 연산자 사용 X) val user = User(“k..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 4.
03.[코틀린 Kotlin 기본]
[03. 코틀린 시작하기] [03-1. 코틀린 언어 소개] [코틀린 Kotlin] -코틀린 : 젯브레인스에서 오픈소스 그룹을 만들어 개발한 프로그래밍 언어. -코틀린으로 안드로이드 앱 개발 가능한 이유는 자바 가상 머신 JVM 기반 언어이기 때문 -코틀린 컴파일러가 (.kt) 파일 컴파일하면 자바 바이트 코드 만들어짐 -즉, 코틀린 파일 컴파일하면 자바 클래스가 만들어지고 이를 JVM 이 실행함 [코틀린 개발 장점] -표현 간결함 -널 안정성 지원 언어 : null허용/불허용 구분 선언하므로 널 안정성 확보 -상호 운용성 : 자바-코틀린 혼용가능. 호환가능 -구조화 동시성 : 코루틴 기법 사용시 비동기 프로그래밍 간소화 가능 [코틀린 파일 구성] : .kt 파일 -코틀린 파일명은 클래스명과 다르게 선언해..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 4.
02. [안드로이드 앱 개발 기본 지식]
[01. 안드로이드 앱 기본 구조] [01. 앱 실행 테스트 방법] 1) AVD 가상 기기 이용 -AVD(Android Virtual Device). = 에뮬레이터 사용하여 테스트 2) 실제 스마트폰 이용 -윈도우용 USB 드라이버 설치 -> 스마트폰에 USB 디버깅 허용 -> 앱 실행 테스트 ▶[안드로이드 자체 특징] -공개 OS인 리눅스 기반 -자바/코틀린 이용 개발 가능 ▶[안드로이드 OS 구조] 리눅스 커널 안드로이드는 리눅스에 기반을 둔 오픈소스 SW 스택 하드웨어 추상화 레이어(HAL) 안드로이드 런타임(ART) 앱 실행하는 역할 안드로이드 NDK(native development kit) 네이티브 안드로이드 앱 대상 라이브러리 자바 API 프레임워크 앱 개발 시 사용하는 자바 API ▶[안드..
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 3. 1.
01. [Android Studio] 기본 환경설정
[설치 완료 후 모습] [sdk 매니저 실행 후 -> 필요한 파일 installed] [Emulator 설치] [앱 실행 테스트 방법] 1) AVD 가상 기기 이용 -AVD(Android Virtual Device). = 에뮬레이터 사용하여 테스트 2) 실제 스마트폰 이용 -윈도우용 USB 드라이버 설치 -> 스마트폰에 USB 디버깅 허용 -> 앱 실행 테스트 [기본 앱 만든 모습] [참고] : Do It 안드로이드 앱 프로그래밍 with 코틀린
- App(앱)_관련 공부 모음/[교재] Andorid App_Kotlin 기반
- · 2022. 2. 28.