하루 노트 2020
[Do it 개정7판] Hello! 안드로이드 본문
책: Do it 안드로이드 앱 프로그래밍 (개정 7판)
날짜: 20-03-09
내용: Chapter01
도구: 안드로이드 스튜디오
언어: 자바
환경: Windows10
01-1. 안드로이드란?
안드로이드 : 구글에서 만든 스마트폰용 운영체제(OS)
특징 : 오픈소스 / 자바 개발언어 / 쉬운 앱간 연동 / 다양한 기능 지원 / 스마트폰을 위한 완벽한 컴포넌트 제공
안드로이드에는 ART라는 런타임이 탑재되어 있다,
런타임은 프로그램을 실행시키는 엔진과 같은 것인데 프로그램의 성능에 영향을 미치는 가장 중요한 요소 중 하나이다.
옛날 표준 자바를 휴대 단말에서 사용할 때 가상 머신의 속도가 느려 성능 문제가 제기 되었지만
안드로이드는 빠른 속도의 런타임을 만들고 성능을 지속적으로 개선하였다.
01-2. 안드로이드의 흐름 살펴보기
*참고
안드로이드 스튜디오에서 자동으로 만들어지는 앱의 외부 라이브러리가 바뀌었다.
support 라이브러리나 AppCompat 라이브러리로 불리던 외부 라이브러리가 andoridx로 변경되었다.
support 라이브러리는 안드로이드 최신 라이브러리들을 예전 단말기에서도 사용할 수 있도록 만들어주는 역할을 했는데
이 라이브러리들의 패키지명이 androidx로 변경되었다.
이렇게 패키지명을 바꾼 이유는 다양한 라이브러리들을 하나의 통일된 패키지로 통합하고
코틀린에서 필요한 기능들을 지원하기 위해서이다.
02-1. 안드로이드 스튜디오 설치하기
안드로이드 스튜디오 설치 링크 : https://developer.android.com/studio
Download Android Studio and SDK tools | Android 스튜디오
developer.android.com
주의사항
* 컴퓨터 사용자 계정이 한글인 경우 오류가 발생한다.
* 실행할 수 있는 메모리 용량이 적은 경우 오류가 발생한다.
안드로이드 플랫폼
안드로이드 플랫폼이란 버전별로 만들어진 실행 환경을 말한다.
PC에서는 에뮬레이터이고 실제 단말에서는 단말의 OS라고 생각하면 된다.
안드로이드 스튜디오 글자크기 변경하기 : File - Settings - Editor - Font
안드로이드 스튜디오에서 자동으로 import구문을 자동으로 넣는 기능
코드가 입력되었을 때 필요한 import 구문을 자동으로 넣을 수 있는 기능을 제공한다.
File - Settings - Editor - General - Auto Import
ㅁ Add unambiguous imports on the fly 체크
ㅁ Optimize imports on the fly ( for current project ) 체크
패키지 이름
패키지 이름은 앱을 구분하는 고유한 값이다.
만든 앱이 단말에 설치되었을 때 다른 앱과 구분될 수 있는 역할을 한다.
실무에서는 패키지 이름을 인터넷 사이트 주소(도메인)처럼 짓는 경우가 많다.
03-1. 첫 프로젝트 만들기
1) MainActivity.java ( 소스코드 )
- 자바 소스파일
안드로이드에서의 시작점은 main함수가 아니라 onCreate( )함수이다.
setContentView( )함수는 화면에 무엇을 보여줄 것인지를 설정해주는 역할
R.layout.activity_main은 화면의 구성 요소에 대한 정보이다. ( 파라미터 )
setContentView(R.layout.activity_main);
2) activity_main.xml ( 화면수정 )
- 왼쪽 (디자인 화면) : 실제 스마트폰에 나타날 화면
- 오른쪽 (청사진 화면) : 화면의 구성 요소만을 보여주는 화면 , Blue Print
( 청사진 화면을 사용하면 화면 안의 요소가 서로 겹쳐 있을 때 요소를 투명하게 보고 작업할 수 있어 유용하다. )
Palette (팔레트) : 화면에 추가할 요소들이 들어있다.
03-2. 에뮬레이터로 Hello World 앱 실행하기
가상단말 ( Android Virtual Manager )
Pixel2 -> Android 10.0 ( Google APIs) x86_64 설치 -> 실행
03-3. Hello 프로젝트 하나씩 바꾸어보기
1) 버튼 추가하기
버튼1 : 메시지 보여주기
버튼2 : 네이버 실행하기
버튼3 : 전화 걸기
(1) XML 레이아웃 파일의 버튼에 onClick 속성 값 넣기
activity_main.xml 파일에 들어 있는 버튼에 onClick 속성 값으로 클릭 이벤트를처리할 함수 이름을 입력한다.
이때 이 함수 이름은 소스 코드(MainActivity.java)에 들어 있는 함수 이름을 그대로 사용한다.
(2) 소스파일에 이벤트 처리 함수 추가하기
MainActivity.java 파일을 열고 XML에서 지정하 함수를 추가한다.
이 함수의 이름은 위에서 넣은 onClick 속성 값과 같아야 한다.
Toast(토스트) : 작고 간단한 메시지를 잠깐 보여주는 역할을 한다.
Intent(인텐트) : 애플리케이션 구성 요소간에 데이터를 전달하거나 실행하려는 기능이 무엇인지
안드로이드 플랫폼에 알려줄 수 있다.
결과
04. 실제 단말 연결하기
삼성 단말기 드라이버 다운 링크 : https://local.sec.samsung.com/comLocal/support/down/kies_main.do?kind=usb
https://local.sec.samsung.com/comLocal/support/down/kies_main.do?kind=usb
local.sec.samsung.com
정리
setContentView( ) : 화면에 무엇을 보여줄지 결정하는 함수
R.layout.activity_main : 화면에 보여줄 대상이 되는 XML의 위치를 지정
/app/res/layout/activity_main : 자바 소스에서 R.layout.activity_main이라고 입력하여 가져올 수 있는
프로젝트 안의 파일이며, 화면을 구성할 때 사용한다.
text 속성 : 화면에 보이는 글자를 변경할 때 사용하는 속성
onClick 속성 : 버튼을 클릭했을 때 어떤 메소드를 실행할 것인지 간단하게 지정할 수 있는 속성
Intent : 어떤 기능을 실행할 것인지 지정할 때 사용
Toast : 화면에 잠깐 보였다 없어지는 메시지를 간단하게 보여주고 싶을 때 사용
'프로그래밍 > 안드로이드' 카테고리의 다른 글
[Do it 개정7판] 프래그먼트 이해하기 (0) | 2020.03.18 |
---|---|
[Do it 개정7판] 여러 화면 간 전환하기 (1) | 2020.03.12 |
[Do it 개정7판]기본 위젯과 드로어블 사용하기 (0) | 2020.03.11 |
[Do it 개정7판] 레이아웃 익히기 (1) | 2020.03.10 |
[Do it 개정7판] 안드로이드 스튜디오와 친숙해지기 (0) | 2020.03.10 |