3주차 Android Application ANDROID App..

Slides:



Advertisements
Similar presentations
모바일 프로그래밍 개론 UNIT 01 로봇 SW 컨텐츠 교육원 조용수. 학습 목표 모바일 프로그래밍이란 ? Embedded System 특성 Mobile OS Hybrid and Native SDK and NDK 2.
Advertisements

Android 소개.  스마트폰의 의미  손 안의 PC 혹은 스마트폰은 모바일 인터넷 단말기이다.  과거 일부 비즈니스 계층과 얼리 어댑터의 전유물에서 최근 일반 대중의 생활로 빠르게 확산 됨.  세계 최초의 스마트폰은 1992 년 COMDEX 에서 IBM 이.
For Android 이재원.  페이스북 SDK 설치  2 가지 예제 & 소스  API 사용 예제 프로젝트 만들기  Graph API  참고사항 & 사이트.
Page  1 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. [ 강의교안 이용 안내 ] 본 강의교안의 저작권은 한빛아카데미㈜에 있습니다. 이 자료를 무단으로 전제하거나 배포할 경우 저작권법 136 조에 의거하여.
플레이스토어가 아닌 곳에서 다운받은 스마트폰 어플리케이션 설치방법 1. 스마트폰에 있는 환경설정 어플리케이션을 찾은후에 실행 시킨다.( 본 기종은 갤럭시노트 2)
제 2 강 프로젝트 구성과 View 안드로이드 앱 개발 강좌. 목 차목 차목 차목 차 목 차목 차목 차목 차 안드로이드 프로젝트 구성 2 에뮬레이터 사용법 3 버전과 screen size 4 5 Hello World 앱 작성하기 1 View 와 ViewGroup.
삼성소프트웨어멤버십 20 th 박희근 ( A n d r o i d.
안드로이드 (Android) 발표자 : 이강민. 1. 안드로이드란 ? 구글에서 제작한 모바일 디바이스를 위한 플랫폼 ▫ 모바일 디바이스 플랫폼이란 ?  모바일 디바이스를 위한 소프트웨어 집합 ( 미들웨어, 키 어플리케이션, 운영체제 등 ) 2. 모바일 플랫폼 시장 점유율.
© 2012 생능출판사 All rights reserved 매니페스트 파일 적재목록 ( 적하목록 )
2 Ⅰ 2016 수출연계형 기술사업화 프로그 램 사업설명회 3 4 구 분지원분야비고 시각디자인 외국어 종이 카탈로그, 외국어 포장디자인 멀티미디어 외국어 전자 카탈로그, 외국어 동영상, 외국어 모바일용 앱, 외국어 홈페이지 디자인 제품디자인 종합디자인 해당분야 모든.
1 Push 알림서비스 시나리오 및 시스템 구축방안 Push 알림서비스 시나리오 및 시스템 구축방안 IBK 기업은행 신채널제휴팀 붙임 4.
① 인터넷우체국 ( 을 통한 검색 새 우편번호 검색방법 ( 인터넷 ) O 다음, 네이버 등 포털서비스와 동일한 통합검색 방식 - 도로명주소, 지번주소, 건물명 등을 입력하여 검색 가능 예시 ) 도움 5 로, 어진동, 우정사업본부.
컴퓨터공학과 CHAP.1 기초 사항. 컴퓨터공학과 1스마트폰 스마트폰 = 컴퓨터 + mp3 플레이어 + 휴 대용 게임기 다양한 앱 설치 가능.
Page 1 Android Programming November 04 / 2009 S/W Junhyuk Jang.
Couple Tetris 제안서 맨땅에해딩 (GNU-A3) 06 안대웅, 06 박순응. CONTENTS 1. 프로젝트 정의 및 목적 2. 프로젝트 결과물의 개요 2.1. 프로젝트 결과물의 구조도 2.2. 프로젝트 결과물의 흐름도 2.3. 프로젝트 결과물의 그림 2.4.
프로젝트 제안서 날씨대로 기분대로 팀원 박효민 신준범 정민섭 안성원
Copyright © PJY All rights reserved..  Java JDK Install & configuration  Android SDK  Eclipse Install & configuration Table of Contents.
해외서, 국내서 요약 ‘북집’ 모바일 서비스 이용방법
변비 재활전문센터 재활 간호사 김은화.
A n d r o i d Android 2010년 5월 19일 동서대학교 백선재
Mobile Cloud Messaging Package
Android 개발환경 설정 및 Android View 소개
안드로이드 프로젝트와 개발도구 첫째 마당 - Chapter 04 Do It! 안드로이드 앱 프로그래밍 Jun. 2013
01. 안드로이드 개요와 개발환경 구축 제목.
Q & A (사실상 혼인·이혼) Q. 사실상 혼인·이혼 관계를 어떻게 처리해야 하나요?   사실 혼인·이혼은 부부 모두 동의 여부를 확인하고, 자녀, 이·통·반장으로부터 「사실(이)혼 확인서」를 징구해야 합니다. 만약 어느 한쪽이 동의하지 않는 경우는.
A n d r o i d Android 2010 년 5월 19일 작성자 : 백 선 재.
13. 멀티미디어와 Google 지도 제목. 13. 멀티미디어와 Google 지도 제목.
소프트웨어 공학 Project - 어플리케이션 만들기 ( CS App. )
회사 소개서.
안드로이드 기반에서 MapServer를 이용한 지도 서비스
제1강 안드로이드 특징과 개발환경 구축 안드로이드 앱 개발 강좌.
안드로이드 개요 2005년 휴대폰 소프트웨어 개발사인 Android를 구글이 인수 2007년 11월 오픈소스로 공개
13. 멀티미디어와 Google 지도 제목. 13. 멀티미디어와 Google 지도 제목.
Computer Science & Engineering
가속도 감지센서를 이용한 안드로이드 게임 지도교수님 : 전진우 이동훈.
포스코신문고 모바일 어플 설치 방법(1/2) [ 접속
Android를 이용한 Snake Game
(Network Transaction Application Server)
Android 개발환경 설치 및 Hello World
02. 처음으로 만드는 안드로이드 애플리케이션 제목.
SOAP 클라이언트 개발 Guide
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
날짜: 팀명: TEAM-SIX 발표자: 이기영
CHAP. 2 안드로이드 개발 도구 설치.
Rhapsody + MFC 개발 가이드.
Open API - Naver (Application Programming Interface )
글사랑 캡션 편집 안드로이드 앱 담당 교수님 전진우 교수님 진세훈 정상기 글사랑.
Project apk 디컴파일과 난독화(with Proguard)
모바일 운영 체제 구글의 안드로이드 애플의 iOS 마이크로소프트의 윈도폰 8 RIM의 블랙베리 OS
SOD 프레임워크 스마트TV 중심의 장소기반 서비스 제공 프레임워크 (Sharing On Display)
안드로이드 사용자를 위한 고양이 가이드 어플 / 황수진-.
Android 한글 키보드 설치하기.
매스커뮤니케이션 신문 목원대학교 서 진 희.
WSDL 의공학과 3학년 김 기 흔.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
CHAP 25. 애플리케이션 배포하기.
삼안 인트라넷 메뉴얼.
2015년 디지털컨버전스 청년취업아카데미.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
마음의 성전이 더 아름다운 조촌교회.
1.비 사업용(자가용 및 관용) 차 종 적 용 상 의 구 분 승합 자동차 (버스) 1 종
CHAP. 2 안드로이드 개발 도구 설치.
안드로이드 앱 분석 팀 기반의 설계 프로젝트 박민재
CHAP 11. 리소스와 보안.
운영체제보안 3번 과제 설명 팀 기반의 설계 프로젝트 박민재
컴퓨터 소프트웨어 설계 및 실험 2016년 1학기 실험계획.
비축사업 전자계약시스템 도입 용역 사용자매뉴얼(업체담당자용) Version 1.0.
Eclipse를 이용한 Embedded Linux 응용 프로그램 개발
[ 사용자 가이드 : 학생용 ] – Version 1.0
11월 고등부 공과설교 업드림? 업드림! 갈라디아서 6:9-10.
Presentation transcript:

3주차 Android Application ANDROID App.

프로젝트의 폴더

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

프로젝트 빌드 과정

프로젝트 빌드 상세 과정

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

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

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

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

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

달빅 VM 안드로이드 애플리케이션을 위한 실행 환경 제공 달빅 VM은 디바이스가 여러 개의 VM을 효율적으로 실행할 수 있도록 구성되어 있음 레지스터 기반의 버추얼 머신 달빅 실행 포맷(.dex)의 실행 .dex포맷은 최소한의 메모리만을 사용할 수 있도록 최적화되어 있음 컴파일 시에 생성됨 리눅스 커널의 기능에 의존하는 부분 스레드 처리와 낮은 수준의 메모리 관리

애플리케이션 프레임워크 애플리케이션 프레임워크(Application Framework)는 프로그래밍에서 특정 운영 체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리 모임이다 안드로이드에서 제공하는 애플리케이션도 애플리케이션 프레임워크의 API에 기반한 경우가 많음 간단한 재사용 컴포넌트, 어떤 애플리케이션과도 호환 가능한 호환성을 제공 액티비티 관리자 (Activity Manager) 애플리케이션의 라이프사이클을 제어함 내용 제공자 (Content Provider) 애플리케이션 간의 데이터를 공유할 수 있도록 함 리소스 관리자 (Resource Manager) 코드 이외의 부분인 리소스를 관리함 위치 관리자 (Location Manager) 자신의 위치 파악에 필요한 기능을 제공함 알림 관리자 (Notification Manager) 알림 기능을 사용자에게 방해가 되지 않도록 제공함

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

개발도구 개요 계층도 뷰어 (Hierarchy Viewer) 디버그 브리지(ADB) 그리기 패치(Draw-9 Patch) 개발자들이 사용자 인터페이스 구성을 확인하고 최적화 할 수 있도록 지원 사용자 인터페이스를 구성하는 뷰들 간의 계층도를 눈으로 보고 확인할 수 있도록 보여주며 현재 디스플레이된 화면의 일부를 동적으로 확대해서 볼 수 있음 디버그 브리지(ADB) 도스창에서 명령어를 통해 에뮬레이터나 실제 단말에 안드로이드 패키지 파일(.apk) 설치 에뮬레이터나 실제 단말에서 실행되고 있는 애플리케이션에 표준 디버거를 연결 그리기 패치(Draw-9 Patch) NinePatch 이미지를 간단하게 만들 수 있는 그래픽 편집기 NinePatch 이미지란 뷰의 배경이나 다른 이미지를 위해 사용할 수 있는 크기 조정이 가능한 비트맵 리소스 패키징 도구(Android Asset Packaging Tool) 개발자가 .apk 파일을 만들 수 있도록 하는 도구 (.apk에는 바이너리와 리소스가 포함됨)

개발도구 개요 디버그 모니터 서비스(Dalvik Debug Monitor Service) 개발자들이 에뮬레이터나 실제 단말의 프로세스를 관리하고 디버깅할 수 있도록 도와주는 도구 기능 프로세스 강제 종료 디버깅 대상 프로세스의 선택 트레이스(trace) 데이터 생성 합(heap)과 스레드(thread) 정보 보기 에뮬레이터나 실제 단말의 스크린 캡쳐 인터페이스 정의 언어(Android Interface Description Language) 개발자들이 프로세스간 통신에 사용되는 인터페이스를 정의하는 aidl코드를 만들 수 있도록 하는 방법 sqlite3 안드로이드 애플리케이션에 만들고 사용하는 SQLite 데이터 파일에 접근할 수 있는 도구

개발도구 개요 트레이스 조회 도구(Traceview) SD 카드 생성기(mksdcard) dex 변환기(dx) 안드로이드 애플리케이션에서 추출된 트레이스 로그 데이터를 분석한 그래픽 자료를 만들어내는 도구 SD 카드 생성기(mksdcard) 에뮬레이터에서 사용될 수 있는 외부 저장장치(SD카드 등)의 디스크 이미지를 개발자들이 가상으로 만들 수 있는 도구 dex 변환기(dx) 자바 클래스 파일을 안드로이드 바이트코드인 .dex포맷으로 변환하는 도구 UI/애플리케이션 테스트 도구(UI/Applicaton Exerciser Monkey) 에뮬레이터나 실제 단말 상에서 실행되는 프로그램으로 가상으로 사용자 이벤트(클릭, 터치, 제스처, 등)나 시스템 수준의 이벤트를 만들어내는 도구로 스트레스 테스트 등에 사용됨. 액티비티 생성기(activitycreator) 안드로이드 애플리케이션 컴파일을 위한 빌드 파일들을 만들어 내는 스크립트