THE TITLE

Similar documents
1부

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

JVM 메모리구조

서현수

AGENDA 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례

1

Microsoft PowerPoint App Fundamentals[Part1].pptx

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

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

02 C h a p t e r Java

PCServerMgmt7

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft PowerPoint - Mobile SW Platform And Service Talk pptx

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

UI VoC Process 안

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

Mstage.PDF

45호_N스크린 추진과정과 주체별 서비스 전략 분석.hwp

ICT03_UX Guide DIP 1605

6주차.key

VOL /2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph

Voice Portal using Oracle 9i AS Wireless


UI피피티

I What is Syrup Store? 1. Syrup Store 2. Syrup Store Component 3.

Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud

슬라이드 1

2/21

untitled

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

Egretia_White_Paper_KR_V1.1.pages

PowerPoint 프레젠테이션

PowerPoint Presentation

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

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

안드로이드 서비스

SNS 어플리케이션 전자통신컴퓨터공학부 조성경

스마트월드캠퍼스 교육교제

Interstage5 SOAP서비스 설정 가이드

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

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

Microsoft PowerPoint - Java7.pptx

02_3 지리산권 스마트폰 기반 3D 지도서비스_과업지시서.hwp

untitled

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_ pptx

PowerPoint 프레젠테이션

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

슬라이드 1

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서

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

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

<4D F736F F D20C1A4BAB8C5EBBDC5C1F8C8EFC7F9C8B8BFF8B0ED5FBDBAB8B6C6AEBDC3B4EBBAF22E727466>

LG-LU6200_ICS_UG_V1.0_ indd

[Brochure] KOR_TunA

슬라이드 1

untitled

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

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

J2EE & Web Services iSeminar

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤


Microsoft Word - ICT Report

Solaris Express Developer Edition

아이패드에 주목하는 것은 현재 성능 때문이 아니다. 오히려 기존 PC나 휴대폰과 구분되는 가치와 사용형태로부터 파생될 변화 때문이다. 되는 선호도 조사에서는 아이패드가 넷북과 e-book보다 월등한 것으로 나타났다. 제품별 인지도는 넷북이 아이패드보다 월등하게 나타 났

untitled

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

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

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

歯이시홍).PDF

UML

<65B7AFB4D7B7CEB5E5BCEEBFEEBFB5B0E1B0FABAB8B0EDBCAD5FC3D6C1BE2E687770>

DE1-SoC Board

¿ÀǼҽº°¡À̵å1 -new

양정규 라온시큐리티

Microsoft PowerPoint - Chapter_02-1_DevEnv.pptx

thesis


CMS-내지(서진이)

_SP28K-....PDF..

1. PVR Overview PVR (Personal Video Recorder), CPU, OS, ( 320 GB) 100 TV,,, Source: MindBranch , /, (Ad skip) Setop BoxDVD Combo

rosaec_workshop_talk

당사의 명칭은 "주식회사 다우기술"로 표기하며 영문으로는 "Daou Tech Inc." 로 표기합니다. 또한, 약식으로는 "(주)다우기술"로 표기합니다. 나. 설립일자 및 존속기간 당사는 1986년 1월 9일 설립되었으며, 1997년 8월 27일 유가증권시장에 상장되

슬라이드 1

Microsoft Word - KSR2014S042

Microsoft PowerPoint - 01.Android-개요 done.pptx


<4D F736F F D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>

DocsPin_Korean.pages

PowerPoint 프레젠테이션

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx

manual pdfÃÖÁ¾

슬라이드 1

목 차

Gartner Day

1

DBMS & SQL Server Installation Database Laboratory

The Self-Managing Database : Automatic Health Monitoring and Alerting

Week13

Transcription:

Android System & Launcher Team 8

목차 Android 1) Android Feature 2) Android Architecture 3) Android 개발방법 4) Android Booting Process Dalvik 1) Dalvik VM 2) Dalvik VM Instance Application 1) Application Package 2) Activity 3) Service 4) Broadcast Receiver 5) Content Provider 6) Android Garbage Collector 7) Intent & Intent Filter 8) Intent 예시 Launcher 1) Home Screen App 2) Launcher 3) AOSP 의 Launcher2 4) Home Screen 5) App List 6) Launcher 의구동원리 #2

Android Android Feature Google에서배포하는모바일에최적화된 OS JNI를통해 JAVA만으로도앱개발이가능하도록설계된것이특징 Linux Kernel 2.6.4를기반으로삼고있지만실제 Application은 Dalvik 위에서동작 빠르고주기적인업데이트와오픈소스의특성으로많은이들에게각광을받고있음 #3

Android Android Architecture 출처 : http://android007.tistory.com/entry/10001 #4

Android Android 개발방법 SDK(Software Developer s Kit) : 주로 UI를기반으로특화된 API를제공하여 Application Level에서의개발을쉽게해주며, 기반은 Java Language NDK(Native Developer s Kit) : SDK 와마찬가지로 Application 을개발하는데에사용되는 Framework 이지만 Java 대신 C/C++ Language 를이용 #5

Android Android Booting Process Kernel init deamons Zygote Runtime Service Manager Dalvik VM System Server Surface Manager Audio Manager Telephony Activity Manager Bluetooth Package Manager Service Manager #6

Dalvik Dalvik VM SUN 의 Java ME 라이선스정책을회피하기위해개발 Java 컴파일러를통해생성된.class 파일을 DX Converter 를통해.dex 로변환해야실행가능 Java Byte Code 와는전혀다른 Dalvik Byte Code 를사용 Dalvik Byte Code 는기존 Java Byte Code 에비해소형기기의 전원관리와성능향상에최적화됨 출처 : http://dlucky.tistory.com/80 #7

Dalvik Dalvik VM Instance App 실행시 Zygote Process로부터 Fork() 됨 Application과 Dalvik VM Instance는 1:1로생성 출처 : http://yotteum.tistory.com/1 #8

Application Application Package 앱을이루는모든구성요소들의집합 (APK) 한패키지내에 4 종류의구성요소가모두있을필요 X 패키지이름은고유해야하며, 일반적으로는도메인을반대로쓰는 형태를사용 (ex : kr.ac.kumoh.tnsl) Activity 1 Service 1 Broadcast Receiver Activity 2 Service 2 Package Content Provider #9

Application Activity 유저-앱간의직접적인상호작용이이루어지는비주얼인터페이스 특정 Activity를 Main Activity로지정가능 (Main Activity는앱실행시최초로실행되는 Activity) 거의대부분의유저앱은하나이상의 Activity를가지고있음 #10

Application Service Non-Visual Component로, 마치백그라운드프로세스 (Background Process) 와같은역할을함 Service는다른 Activity를보고있는동안에도계속실행되며, 음악재생, PUSH Service 등에자주이용됨 Service는유저와의직접적인상호작용이불가능하므로, 필요시상단바의 Notification 혹은 Toast 메시지등으로상황을알려야함 #11

Application Broadcast Receiver Broadcast 공지를수신하고응답하는 Component 언어설정변경, 배터리부족, 앱삭제 / 설치등각종시스템상황에 Broadcast 되는공지를받아서처리할수있음 Broadcast Receiver 역시유저와의상호작용이불가능하므로, Notification 혹은 Toast 메시지등으로상황을알려야함 #12

Application Content Provider 서로다른 Application에서쉽고안정적으로 DB를공유하기위해설계된 Component 2개이상의 Application이 DB를동기화할필요가없어짐 Intent 등의메시지로한꺼번에데이터를전송하는것보다훨씬효율적 출처 : http://warmz.tistory.com/398 #13

Application Android Garbage Collector 효율적인전원관리와메모리관리를위해사용하지않는앱을조용히 Unload 시키는 Process Zygote Process 생성직후 Dalvik GC Daemon 생성 Dalvik GC Daemon은평소에는 wait 상태로 CPU에서처리되지않다가앱에서 GC 실행을요청하면깨어남 GC 요청은실행중인앱에서 Dalvik이계산한이상적인값 ( 프로그램용량 128KB) 보다 Heap 할당량이많아질경우해당앱에서호출 #14

Application Intent Android에서각 Component 또는 Application간에이벤트나정보를전달하기위한메시지객체 Broadcast 공지또한 Intent 객체로전달 Intent-Filter Intent를수신하는측에서특정 Intent만을수신하고자할때설정하는 Filter Action, Category : Intent-Filter로서사용되는식별자 Intent-Filter 정보는 manifest.xml파일에서등록가능 #15

Application Intent 예시 <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> 일반 User App 의 Top Activity <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.home /> <category android:name="android.intent.category.default" /> </intent-filter> Home Screen App 의 Home Activity #16

Launcher Home Screen App manifest의 intent-filter만수정하면어떤 App이든지 Home Screen App으로동작가능함 Booting 혹은 Home key의 Default 동작시시스템에서직접호출됨 타 Activity를생성하는것이외에다른동작으로 Activity가종료되지않음 (ex : 취소버튼, 홈버튼의 Default 동작 ) 설치되었거나사용가능한 App 리스트를목록으로출력할시, Home Screen App은포함되지않음 순차기반디버깅이불가능 (Logcat 내역은출력됨 ) #17

Launcher Launcher Android OS에설치된모든 Application을터치인터페이스로실행할수있게도와주는 Home Screen Application 최근에는 Wallpaper, App-Widget 등의부가요소또한 Launcher의필수요소로인식되어짐 Launcher는각종시스템권한이필요하므로 AOSP(Android Open Source Project) 의기본시스템앱으로등록되어있음 #18

Launcher AOSP 의 Launcher2 Reference Device에제공되는가장기초적인 Launcher 삼성이나 LG 등의각종대기업에서제공하는 Launcher 역시 AOSP의 Launcher2를수정하여배포 화려하고편리한 UI를제공해주며, App-Widget을제공함 #19

Launcher AOSP 의 Launcher2 Home Screen 출처 : http://blog.secmem.org/239 #20

Launcher AOSP 의 Launcher2 App List #21

Launcher Launcher 의구동원리 User App 1 User App 2 User App 3 User App 4 User App 5 App List startactivity(intent) startactivity(intent) App Data Load Home Screen startactivity(intent) Package Manager Android System #22