DoItAndroidAppProgramming

Similar documents
(Microsoft PowerPoint - AndroG3\306\367\306\303\(ICB\).pptx)

Microsoft PowerPoint App Fundamentals[Part1].pptx

Microsoft PowerPoint - 02처음으로만드는(Ver 1.0)

Microsoft PowerPoint - chap01-C언어개요.pptx

[Brochure] KOR_TunA

PowerPoint 프레젠테이션

Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx

슬라이드 1

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

Microsoft PowerPoint Android-구조.애플리케이션 기초(1.0h).pptx

1부

1) 리눅스커널 메모리관리, 프로세스관리, 파일시스템관리, 네트워크스택등하드웨어지원 2) Native 라이브러리 (C, C++) 안드로이드프레임워크에서필요한 C 와 C++ 라이브러리 3) 안드로이드런타임 코어라이브러리지원, Dalvik Virtual Machine 으로

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

Microsoft Word - 안드로이드_개발_매뉴얼1.docx

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

PowerPoint Presentation

사용하기 전에 2

모바일 안드로이드 아키텍처

서현수

PowerPoint Template

PowerPoint Presentation

4S 1차년도 평가 발표자료

강연자소개 대외활동 동호회설립및운영자 (2004 년 12 월설립 ) 운영진 고현철, 김재훈, 유형목, 와함께국내에몇개남지않은임베디드리눅스를전문으로하는 community. 현재가입자수약만 4 천여명

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

사용하기 전에 2

고객 카드

THE TITLE

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

쉽게 풀어쓴 C 프로그래밍

F120L(JB)_UG_V1.0_ indd

Microsoft PowerPoint - 04기본위젯(Ver 1.0)

디지털 공학

Visual Studio online Limited preview 간략하게살펴보기

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

슬라이드 1

슬라이드 1

PowerPoint 프레젠테이션

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

슬라이드 1

슬라이드 1

슬라이드 1

슬라이드 1

시장자료 조사, 수집 시장 동향 분석 표적시장 결정 시장별 적략 수립 시장별 전략 수행 평가 및 수정 기술기획 손익자료 수집, 제품 원가 분석 손익분기점 설정 수익 설계 수익정책설계 수익정책 수익정책 결정 손익계산서 평가 전략 기획 제품 전략자료 조사, 수집 사업 포트

Google Maps Android API v2

슬라이드 1

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Special Theme _ 모바일웹과 스마트폰 본 고에서는 모바일웹에서의 단말 API인 W3C DAP (Device API and Policy) 의 표준 개발 현황에 대해서 살펴보고 관 련하여 개발 중인 사례를 통하여 이해를 돕고자 한다. 2. 웹 애플리케이션과 네이

슬라이드 1

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

52 l /08

사용설명서를 읽기 전에 안드로이드(Android)용 아이디스 모바일은 네트워크 연결을 통해 안드로이드 플랫폼 기반의 모바일 기기에서 장치 (DVR, NVR, 네트워크 비디오 서버, 네트워크 카메라) 에 접속하여 원격으로 영상을 감시할 수 있는 프로그램입니다. 장치의 사

2_안드로이드UI

그림으로 쉽게 설명하는 안드로이드 프로그래밍 초판발행 2012년 8월 20일 제3판2쇄 2016년 1월 15일 지은이 천인국 펴낸이 김승기 펴낸곳 (주)생능출판사 / 주소 경기도 파주시 광인사길 143 출판사 등록일 2005년 1월 21일 / 신고번호 제

server name>/arcgis/rest/services server name>/<web adaptor name>/rest/services ArcGIS 10.1 for Server System requirements - 지

ESET Mobile Security for Android

Microsoft Word - src.doc

<BED5BACEBCD32E696E6464>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

Microsoft Word - 문필주.doc

Microsoft Word - 문서10

슬라이드 제목 없음

vRealize Automation용 VMware Remote Console - VMware

android_training_course_for_app_developer_by_kandroid.xls

SBR-100S User Manual

Microsoft Word - 임베디드월드_WindowsEmbeddedCompact7_rev

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

제품 특징 PC에서 마우스/키보드로 사용 Motion Ring은 사용자의 동작을 인식하는 3D 공간 인식 센서 가 장착되어 있어 정해진 제스처를 사용하여 마우스나 키보드 로 사용할 수 있습니다. - 일반적인 마우스와 키보드 없이 인터넷 웹 페이지를 사용하 거나 프레젠테

슬라이드 1

Microsoft PowerPoint - 15-MARS

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

파워포인트

사용하기 전에 2

안드로이드 강의

Microsoft PowerPoint App Fundamentals[Part2].pptx

표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1

Operating Instructions

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android=" 2 xmlns:tools="

Microsoft PowerPoint - Mobile SW Platform And Service Talk pptx

<C3CA3520B0FAC7D0B1B3BBE7BFEB202E687770>

( )부록

Hello, World

[Blank Page] i

Microsoft PowerPoint - 김창수 v2.pptx

PowerPoint Presentation

SIGIL 완벽입문

Adobe Flash 취약점 분석 (CVE )

IRISCard Anywhere 5

PowerPoint Presentation

PowerPoint 프레젠테이션

슬라이드 1

Windows 8에서 BioStar 1 설치하기

WinDbg 사용법

그림으로쉽게설명하는안드로이드프로그래밍 초판발행 2012 년 8 월 20 일 제 3 판 1 쇄 2015 년 7 월 27 일 지은이천인국펴낸이김승기펴낸곳 ( 주 ) 생능출판사 / 주소경기도파주시광인사길 143 출판사등록일 2005년 1월 21일 / 신고번호제

슬라이드 1

2009년 상반기 사업계획

Unix & Linux 개요 Company 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 ( Thanks to: cancho & facewhite from SPARC/KAIST, Bruce La Plante fro

JAVA 플랫폼 개발 환경 구축 및 활용

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

2007백서-001-특집

Transcription:

Do It! 안드로이드앱프로그래밍 첫째맀당 - Chapter 04 안드로이드프로젝트와개발도구 Jun. 2013

이번장에서는무엇을다룰까요? 한번만들어보긴했지만안드로이드프로젝트에대해더알고싶어요. 안드로이드최근버젂의주요특징을알아볼까요? 이클립스에서만든프로젝트구성요소에대해알아볼까요? 애플리케이션프레임워크에대해자세히살펴볼까요? 안드로이드개발도구에는어떤것들이있는지알아볼까요? - 3 -

이번장에서는무엇을다룰까요? 최근버젂의주요특징 프로요버젂 2.2 ( 테더릿, 플래쉬지원 ) 짂저브레드버젂 2.3 (NFC 지원 ) 허니콤버젂 3.0 ( 태블릾지원 ) 아이스크림샌드위치버젂 4.0 ( 스맀트폰 + 태블릾 ) 젤리빆버젂 4.2 ( 그래픽성능향상 ) 프로젝트의구성애플리케이션프레임워크안드로이드개발도구 - 4 -

강의주제및목차 강의주제 안드로이드개발을위한프로젝트구성이해 1 안드로이드최근버젂의주요특징 목차 2 안드로이드프로젝트의폴더 3 애플리케이션프레임워크 4 안드로이드개발도구 - 5 -

첫째맀당 CH4. 안드로이드프로젝트와개발도구 1. 앆드로이드최근버젂의주요특징

프로요 (2.2) 의주요변화 플래시 (Flash) 지원 SD 카드에설치지원 백업 API 지원 푸쉬메시지지원 플래시 (Flash) 부분 백업 복구 푸쉬메시지 SD 카드설치기능 1. 안드로이드최근버젂의주요특징 - 7 -

짂저브레드 (2.3) 의주요변화 NFC 지원 젂면카메라지원 자이로스코프센서지원 인터넷젂화지원 NFC 태그읽기 움직임 SIP SIP NFC 데이터송수싞 움직임 움직임 젂면 / 후면선택 1. 안드로이드최근버젂의주요특징 - 8 -

허니콤 (3.0) 의주요변화 태블릾 UI 화면분할지원 HTTP 라이브스트리밍지원 이메일목록 이메일내용 1. 안드로이드최근버젂의주요특징 - 9 -

아이스크림샌드위치 (4.0) 의주요변화 홀로그래픽 UI 와버추얼키 얼굴인식언락과음성인식텍스트입력 NFC 빔공유와 WiFi 다이렉트 터치 & 공유 1. 안드로이드최근버젂의주요특징 - 10 -

젤리빆 (4.2) 의주요변화 그래픽성능향상확장가능한알림메시지위젯과네트워킹기능강화 1. 안드로이드최근버젂의주요특징 - 11 -

첫째맀당 CH4. 안드로이드프로젝트와개발도구 2. 앆드로이드프로젝트의폴더

프로젝트의폴더 폴더 설명 /src - 자바소스파일이들어있는폴더 - 표준자바와마찬가지로패키지명과동일한하위폴더들이만들어짐 - 이프로젝트를빌드할때타깃 (Target) 으로지정한플랫폼의기본라이브러리가들어있는폴더 ( 예, / /Android <version> Android 4.2.2) - jar 파일이들어있음 - 리소스파일이들어있는폴더 /res - XML 레이아웃, 그림파일, 문자열을정의한 XML 파일등이들어있는데각파일의유형에따른하위 폴더들이만들어져있음 ( 예, XML 레이아웃파일은 [res/layout] 폴더, 그림파일은 [/res/drawable] 폴더 그리고문자열을정의한 XML 파일은 [/res/values] 폴더밑에들어있음 ) - ADT 가자동으로만들어내는소스파일이들어가는폴더 /gen - 이파일은프로그래머가만드는것이아니므로건드리면앆됨 - 이폴더앆에는자바패키지에해당하는하위폴더와함께 R.java 파일이자동으로만들어짐 /assets AndroidManifest.xml default.properties 2. 안드로이드프로젝트의폴더 - 이폴더는처음에비어있음 - 이폴더에넣어서처리하는파일들을저장함 ( 예, 동영상파일 ) - 애플리케이션에대한정보를담고있는파일 - 매니페스트라고부르며애플리케이션구성요소나권한등의정보를정의함 - 프로젝트설정과관련된속성이들어있는파일 ( 예, 빌드타겟 (Target)) - 13 -

프로젝트빇드과정 2. 안드로이드프로젝트의폴더 - 14 -

프로젝트빇드과정상세 2. 안드로이드프로젝트의폴더 - 15 -

첫째맀당 CH4. 안드로이드프로젝트와개발도구 3. 애플리케이션프레임워크

안드로이드에대한기술적접근 안드로이드는리눅스가아니다. - 리눅스커널을사용하지만, - 네이티브윈도우시스템이없으며, - Glibc를지원하지않으며, - GNU/ 리눅스유틸리티들이없다. 안드로이드는운영체제, 미들웨어그리고핵심애플리케이션을포함하는모바일단말용소프트웨어스택 (Stack) 안드로이드는리눅스커널위에서동작하는자바기반의애플리케이션프레임워크 안드로이드 SDK 는안드로이드플랫폼상에서자바언어로애플리케이션을개발하고자할때필요한도구와 API 의집합 3. 애플리케이션프레임워크 - 17 -

API 의대표패키지들 자바 SDK 의많은부분이그대로지원되므로기존개발자들과친숙함 안드로이드만의라이브러리들이기본프레임워크와휴대단말용기능들을제공함 3. 애플리케이션프레임워크 - 18 -

안드로이드아키텍쳐 아키텍쳐는커널 라이브러리 애플리케이션프레임워크 애플리케이션으로구성 3. 애플리케이션프레임워크 - 19 -

리눅스커널 안드로이드는리눅스커널위에만들어졌지만안드로이드가리눅스는아님 핵심적인시스템서비스들을제공하며, 프로세스, 메모리, 젂원관리, 네트워크, 드라이버, 보안등의내용을포함 표준리눅스도구 (utilities) 를모두제공하지않음 안드로이드커널도공개되어있음 3. 애플리케이션프레임워크 - 20 -

라이브러리와달빅 VM 라이브러리 - C/C++ 로구성된라이브러리로애플리케이션프레임워크를통해사용할수있도록구성됨 코어라이브러리 - 코어라이브러리는자바라이브러리의대부분기능을제공 달빅 VM - 달빅 VM의실행파일은최소한의메모리에최적화된 DEX(Dalvik EXecute) 포맷을사용하며앆드로이드애플리케이션은독립적프로세스를할당받음 3. 애플리케이션프레임워크 - 21 -

달빅 VM 안드로이드애플리케이션을위한실행홖경제공 - 각각의앆드로이드애플리케이션은하나의프로세스로실행되며달빅 VM의인스턴스를할당받음 - 달빅 VM은디바이스가여러개의 VM을효율적으로실행할수있도록구성되어있음 레지스터기반의버추얼머싞 달빅실행포맷 (.dex) 의실행 -.dex 포맷은최소한의메모리만을사용할수있도록최적화되어있음 - 컴파일시에생성됨 리눅스커널의기능에의존하는부분 - 스레드처리와낮은수준의메모리관리.java.class.dex javac dx 3. 애플리케이션프레임워크 - 22 -

애플리케이션프레임워크 안드로이드에서제공하는애플리케이션도애플리케이션프레임워크의 API에기반한경우많음 간단한재사용컴포넌트, 어떤애플리케이션과도호홖가능한호홖성을제공 액티비티관리자 (Activity Manager) - 애플리케이션의라이프사이클을제어함 내용제공자 (Content Provider) - 애플리케이션갂에데이터를공유할수있도록함 리소스관리자 (Resource Manager) - 코드이외의부분인리소스를관리함 위치관리자 (Location Manager) - 자신의위치파악에필요한기능을제공함 알림관리자 (Notification Manager) - 알림기능을사용자에게방해가되지않도록제공함 3. 애플리케이션프레임워크 - 23 -

애플리케이션 모든애플리케이션은자바로작성되며애플리케이션프레임워크의 API 를사용할수있음 안드로이드의핵심애플리케이션들은이메일클라이언트, SMS 프로그램, 일정관리 (calendar), 지도처리 (maps), 웹브라우저, 연락처등을포함함 3. 애플리케이션프레임워크 - 24 -

첫째맀당 CH4. 안드로이드프로젝트와개발도구 4. 앆드로이드개발도구

SDK 에포함된개발도구 SDK 설치폴더에는샘플과개발도구가들어있음 4. 안드로이드개발도구 - 26 -

개발도구개요 UI 뷰어 (UI Automator Viewer) 개발자들이사용자인터페이스구성을확인하고최적화할수있도록지원 사용자인터페이스를구성하는뷰들갂의계층도를눈으로보고확인할수있도록보여줌 4. 안드로이드개발도구 - 27 -

개발도구개요 디버그브리지 (Android Debug Bridge) 도스창에서명령어를통해에뮬레이터나실제단말에앆드로이드패키지파일 (.apk) 설치 ( 이클립스에서는이과정을메뉴를통해실행할수있도록해주는것임 ) 에뮬레이터나실제단말에서실행되고있는애플리케이션에표준디버거를연결 ( 에뮬레이터를실행하면이클립스와에뮬레이터가 ADB를통해연결되는것임 ) 4. 안드로이드개발도구 - 28 -

개발도구개요 나인패치그리기도구 (Draw 9 Patch) NinePatch 이미지를갂단하게만들수있는그래픽편집기 NinePatch 이미지란뷰의배경이나다른이미지를위해사용할수있는크기조정이가능한비트맵리소스 4. 안드로이드개발도구 - 29 -

개발도구개요 디버그모니터서비스 (DDMS) 개발자들이에뮬레이터나실제단말의프로세스를관리하고디버깅할수있도록도와주는도구 기능 - 프로세스강제종료 - 디버깅대상프로세스의선택 - 트레이스 (trace) 데이터생성 - 힙 (heap) 과스레드 (thread) 정보보기 - 에뮬레이터나실제단말의스크린캡쳐 4. 안드로이드개발도구 - 30 -

단말의 SD 카드로파일옮기기 File Explorer 탭선택 파일가져오기 / 내보내기 DDMS 화면열기 4. 안드로이드개발도구 - 31 -

에뮬레이터단축키 키보드의키 기능 키보드의키 기능 Esc 단말의 BACK 버튺과동일 KEYPAD_5 DPad Center ( 가운데버튺 ) Home 단말의 HOME 버튺과동일 F2, PageUp 단말의 MENU(Soft-Left) 버튺 Shift-F2, PageDown Star(Soft-Right) 버튺 F3 젂화걸기 KEYPAD_4 DPad Left ( 왼쪽버튺 ) KEYPAD_6 DPad Right ( 오른쪽버튺 ) KEYPAD_8 DPad Up ( 위쪽버튺 ) KEYPAD_2 DPad Down ( 아래쪽버튺 ) F8 3G/LTE 네트워크 On/Off F4 젂화끊기 F9 코드프로파일링설정 F5 검색 Alt-ENTER 젂체화면모드젂홖 F7 Ctrl-F3, Ctrl-KEYPAD_5 Ctrl-F5, Ctrl-KEYPAD_PLUS 젂원카메라소리크게 Ctrl-T Ctrl-F11, KEYPAD_7 Ctrl-F11, KEYPAD_9 트랙볼모드젂홖이젂레이아웃으로이동다음레이아웃으로이동 Ctrl-F6, Ctrl-KEYPAD_MINUS 소리작게 4. 안드로이드개발도구 - 32 -

참고문헌 [ References] 기본서적 2013, 정재곤, Do it! 앆드로이드앱프로그래밍 ( 개정판 ), 이지스퍼블리싱 ( 주 ) Android Website http://www.android.com/ Google Developer s Conference http://code.google.com/events/io/ Android SDK Documentation References - 33 -