Android발표자료 홍종진

3,075 views

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,075
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Android발표자료 홍종진

  1. 1. Android Platform Hong, JongJin August 27, 2009 Korea Advanced Institute of Science and Technology, IT Convergence Campus
  2. 2. Contents <ul><li>1. Introduction </li></ul><ul><li>2. Android Application </li></ul><ul><li>3. Android Market </li></ul><ul><li>4. Oracle Sues Google </li></ul><ul><li>5. References </li></ul> / 50
  3. 3. 1. Introduction
  4. 4. 2010 년 모바일 시장 전망 모바일 아웃룩 포럼 관련 기사 참고 http://www.betanews.net/article/488928
  5. 5. 모바일 기기 진화 방향 모바일 아웃룩 포럼 관련 기사 참고 http://www.betanews.net/article/488928
  6. 6. 모바일 소프트웨어 진화 방향 모바일 아웃룩 포럼 관련 기사 참고 http://www.betanews.net/article/488928
  7. 7. 모바일 서비스 진화 방향 모바일 아웃룩 포럼 관련 기사 참고 http://www.betanews.net/article/488928
  8. 8. Android <ul><li>What is Android? </li></ul><ul><ul><li>휴대전화기를 비롯 , 모바일 디바이스를 위한 운영체제와 미들웨어 그리고 핵심 응용 프로그램을 포함하고 있는 소프트웨어 스택 </li></ul></ul><ul><ul><li>Java 언어 지원 , Linux Kernel 기반 </li></ul></ul><ul><ul><li>Smart Phone 및 기타 모바일 디바이스 </li></ul></ul><ul><ul><li>By Google </li></ul></ul><ul><li>What is SmartPhone? </li></ul><ul><ul><li>Just Like PC(OS, CPU, Memory) </li></ul></ul><ul><ul><li>Full Browser support </li></ul></ul><ul><ul><li>App Store support </li></ul></ul> / 50
  9. 9. Android Architecture / 50
  10. 10. Java VM(Dalvik virtual machine) / 50
  11. 11. Android 주요기능 / 50 핸드셋 레이아웃 플랫폼은 VGA , 2D 그래픽스 라이브러리 , OpenGL ES 1.0 에 기반을 둔 3D 그래픽스 라이브러리 지원 저장소 데이터 저장 목적의 SQLite 데이터베이스 소프트웨어가 사용됨 통신 안드로이드는 GSM / EDGE , CDMA , EV-DO , UMTS , 블루투스 , 와이파이 를 포함하는 커넥션 기술을 지원한다 . 메시징 SMS 와 MMS 가 가능 . 웹 브라우저 오픈 소스인 웹키트 응용 프로그램 프레임워크 기반의 브라우저 지원 . 자바 지원 자바 로 작성된 소프트웨어는 달빅 가상 머신 에서 실행 가능한 코드로 컴파일된다 . 달빅 가상 머신은 표준 자바 가상 머신은 아니지만 모바일 기기를 위해 설계된 가상 머신이다 . 미디어 지원 안드로이드는 다음의 오디오 / 비디오 / 이미지 포맷을 지원한다 : H.263 , H.264 ( 3GP 또는 MP4 컨테이너 ), MPEG-4 SP , AMR , AMR-WB (3GP container), AAC , HE-AAC (MP4 또는 3GP container), MP3 , MIDI , OGG Vorbis , WAV , JPEG , PNG , GIF , BMP . 추가 하드웨어 지원 안드로이드는 카메라 , 터치스크린 , GPS , 가속도센서 , 나침반센서 , 트렉볼 2D 그래픽 가속 , 3D 그래픽 가속을 활용할 수 있다 . 개발 환경 기기 에뮬레이터 , 디버깅 도구 , 메모리와 성능 프로파일링을 포함하는 Eclipse IDE 플러그인 . 마켓 iPhone OS 의 App Store 와 유사한 안드로이드 마켓 은 PC 사용 없이 무선으로 대상 하드웨어로 다운로드 와 설치가 가능한 응용프로그램 목록을 제공 . 원래 프리웨어만 지원 되었으나 2009 년 2 월 19 일 부터 유료 애플리케이션도 제공되었다 . 멀티 터치 안드로이드는 멀티 터치 를 네이티브로 지원하지만 ( 애플의 터치스크린 기술 특허 침해를 피하기 위해 ) 커널 수준에서 비활성화 되었다 . 멀티 터치를 가능하게 하는 비공식 변형이 개발되었지만 장치에 접근하기 위해 슈퍼유저 가 요구된다 . 미국 이외의 국가의 안드로이드 기기들은 멀티터치가 가능하다 ( 애플 사의 멀티터치 특허권이 미국에 한정되기 때문 . 대표적인 예로써 Droid 의 유렵향 버전인 마일스톤 (Milestone) 은 핀치 크기 조절이 가능함 ) 블루투스 블루투스를 통한 파일 전송이 버전 2.0 에 추가되었다 영상통화 안드로이드는 영상통화를 지원하지 않는다 . 하지만 , 전화기에 UI 및 프로그램을 추가 하여 사용이 가능 하다 . HTC Evo4G 에서는 HTC 자체의 Sense UI 를 사용하여 영상통화를 지원한다 .
  12. 12. Android Phone & IPhone4 / 50
  13. 13. Android Phone 역사 <ul><li>1.5 Cupcake(2009.1) </li></ul><ul><ul><li>홈스크린 위젯 </li></ul></ul><ul><ul><li>비디오 레코딩 </li></ul></ul><ul><ul><li>음성인식 </li></ul></ul><ul><li>1.6 Donut(2009.9) </li></ul><ul><ul><li>Gesture 터치 동작 인식 </li></ul></ul><ul><ul><li>다양한 화면 지원 (QVGA, HVGA, WVGA) </li></ul></ul><ul><ul><li>Text to Speech 음성 변환 엔진 </li></ul></ul><ul><li>2.0 Éclair(2009.10) </li></ul><ul><ul><li>다중계정지원 </li></ul></ul><ul><ul><li>블루투스 </li></ul></ul><ul><ul><li>멀티터치지원 </li></ul></ul><ul><li>2.2 Froyo(2010. 3) </li></ul><ul><ul><li>Voice Action 지원 </li></ul></ul><ul><ul><li>JIT 기능 지원 . 속도 2~5 배 향상 </li></ul></ul><ul><li>2.2 Gingerbread (2010. Q4) </li></ul><ul><ul><li>Copy/Paste 기능 향상 </li></ul></ul><ul><ul><li>새로운 UI 지원 </li></ul></ul><ul><ul><li>3D 게임 API 지원 </li></ul></ul><ul><ul><li>다양한 화면 지원 to Wide XGA (1366×768) </li></ul></ul> / 50 Early Android Device(1.5 Cupcake)
  14. 14. Android 라이센스 <ul><li>Apache 2.0 라이센스 </li></ul><ul><ul><li>오픈 소스 라이선스 </li></ul></ul><ul><ul><li>소스 코드의 공개 의무가 없음 </li></ul></ul><ul><ul><li>기업에서도 부담 없이 채택할 수 있는 가장 자유롭게 사용할 수 있는 오프소스 라이선스 중하나 . </li></ul></ul><ul><ul><li>http://www.apache.org/licenses/LICENSE-2.0.html </li></ul></ul> / 50 Early Android Device(1.5 Cupcake)
  15. 15. 2. Android Application
  16. 16. Android Application 특징 <ul><li>액티비티를 기반으로 어플 실행 </li></ul><ul><ul><li>안드로이드 앱의 기본 구성요소 </li></ul></ul><ul><ul><li>보통 하나의 화면이 하나의 액티비티 </li></ul></ul><ul><li>어플리케이션 경계가 모호함 . 다양한 어플이 연동해서 실행됨 </li></ul>
  17. 17. Android Application 특징 <ul><li>멀티태스킹 완벽 지원 </li></ul><ul><ul><li>백그라운드 어플 실행 지원 </li></ul></ul><ul><ul><li>강력한 Notification 기능 지원 </li></ul></ul><ul><ul><li>보안 및 밧데리 소모에 주의가 필요함 . </li></ul></ul><ul><ul><li>해킹 어플리케이션 주의 필요 </li></ul></ul>
  18. 18. 기존 어플 대체 기능 <ul><li>기본으로 설치되어 있는 어플 대체 가능함 </li></ul><ul><ul><li>사용자의 다양한 선택 지원 </li></ul></ul><ul><ul><li>다양한 어플리케이션 지원 </li></ul></ul>
  19. 19. Weather Channel <ul><li>날씨 정보 제공 어플 </li></ul><ul><ul><li>맵 연동 및 관심 지역 관리 기능 지원 </li></ul></ul><ul><ul><li>동영상 제공 및 SMS 을 통한 경고 기능 제공 </li></ul></ul>
  20. 20. ShopSavvy <ul><li>카메라 인식 기술을 이용한 어플 </li></ul><ul><ul><li>바코드 & QR 코드를 통한 상품 검색 </li></ul></ul><ul><ul><li>인터넷 최적가 검색 기능 </li></ul></ul><ul><ul><li>매장 검색 </li></ul></ul>
  21. 21. PicSay <ul><li>사진 편집 및 공유 어플 </li></ul><ul><ul><li>사진을 다양하게 편집하는 기능 제공 </li></ul></ul><ul><ul><li>인터넷 공유 기능 제공 ( 메일 , 블로그등 사진 공유 ) </li></ul></ul>
  22. 22. Android Packaging
  23. 23. Application 개발 UI Builder Eclipse 통합 개발 환경 에뮬레이터
  24. 24. Web Application <ul><li>an application is accessed over a network such as the Internet or an intranet. </li></ul><ul><li>a computer software application is hosted in a browser-controlled environment (e.g. a Java applet) or coded in a browser-supported language (such as JavaScript, combined with a browser-rendered markup language like HTML) </li></ul><ul><li>A browser-supported language by Plug-ins </li></ul><ul><ul><li>Flash </li></ul></ul><ul><ul><li>Java </li></ul></ul><ul><ul><li>C# </li></ul></ul><ul><li>Webkit & THML 5 </li></ul><ul><li>Hybrid Web Application = Native App + Web App </li></ul>
  25. 25. Web Application Architecture OS Kerner/Device Driver OS Service(File, Media, Camera, etc) Web Runtime(Webkit) Web Applications Internet JIL/BONDI
  26. 26. HTML 5 <ul><li>HTML5 정의 </li></ul><ul><ul><li>HTML5 는 HTML 의 차기 주요 제안 버전으로 월드 와이드 웹의 핵심 마크업 언어이다 . 2004 년 6 월 Web Hypertext Application Technology Working Group(WHATWG) 에서 웹 어플리케이션 1.0 이라는 이름으로 세부 명세 작업을 시작하였다 . 2009 년 10 월 WHATWG 의 현재 최종 제안 상태이다 . </li></ul></ul><ul><ul><li>HTML5 는 HTML 4.01, XHTML 1.0, DOM Level 2 HTML 에 대한 차기 표준 제안이다 . 이것은 어도비 플래시나 마이크로소프트의 실버라이트 , 썬의 자바 FX 와 같은 플러그인 기반의 인터넷 어플리케이션에 대한 필요를 줄이는데 목적을 두고 있다 . </li></ul></ul>
  27. 27. HTML 5 주요 API <ul><li>특히 웹 애플리케이션 작성을 보다 쉽도록 하기 위한 몇 가지 API 를 도입 하였는데 아래를 참고 하자 . </li></ul><ul><ul><li>Canvas 요소를 사용하여 2D 그래픽 API 를 제공 </li></ul></ul><ul><ul><li>비디오 및 오디오를 재생 하기 위한 video 및 audio 요소 도입 . </li></ul></ul><ul><ul><li>오프라인 웹 어플리케이션을 가능 하는 API 제공 . </li></ul></ul><ul><ul><li>웹 어플리케이션이 특정 프로토콜이나 미디어 타입을 등록 할 수 있도록 허용 하는 API 제공 </li></ul></ul><ul><ul><li>사용자가 웹 컨텐트를 수정 할 수 있는 API 제공 . </li></ul></ul><ul><ul><li>드래그 앤 드랍을 가능하게 하는 API 제공 . </li></ul></ul><ul><ul><li>페이지 앞 / 뒤 네비게이션을 지원할 방문 기록 표시용 API 기능 . </li></ul></ul><ul><ul><li>다중 메시징 처리 . </li></ul></ul><ul><ul><li>Geolocation 과 같은 위치 확인 기능 및 브라우저 로컬 스토리지 , 다중 스레드처리가 가능한 Web Worker, 웹 SQL Database 를 위한 Query 등도 지원 한다 . </li></ul></ul>
  28. 28. 실제 HTML5 어플 <ul><li>그래픽 작성 도구 : http://mugtug.com/sketchpad/ </li></ul>
  29. 29. Google Mash-up Service
  30. 30. Nokia Mash-up Service
  31. 31. Naver Book 검색 어플 Naver Book 검색 어플
  32. 32. 다음 지도 연동 어플
  33. 33. Main Web Services
  34. 34. 3. Android Market / 50
  35. 35. Android Market / 50
  36. 36. Android Market <ul><ul><li>개발자 등록비 25$ </li></ul></ul><ul><ul><li>판매금액의 70% 를 개발자가 가져감 </li></ul></ul><ul><ul><li>30% 는 통신사와 약간의 결제 수수료 </li></ul></ul><ul><ul><li>구글은 마켓에서 수익을 내지 않음 </li></ul></ul><ul><ul><li>http://www.android.com/market </li></ul></ul><ul><ul><li>중앙 집중화된 시장 형성 </li></ul></ul> / 50 Early Android Device(1.5 Cupcake)
  37. 37. Android Market 의 특징 <ul><li>어플리케이션 등록에 제한이 없음 </li></ul><ul><ul><li>유튜브와 같은 시스템 </li></ul></ul><ul><ul><li>HelloWorld 같은 간단한 어플로 올릴 수 있음 </li></ul></ul><ul><ul><li>바이러스 및 핵킹의 어플에 대한 검열이 없음 </li></ul></ul><ul><li>신뢰성 확보에 문제가 있음 </li></ul><ul><ul><li>사용자의 평가와 퍼미션 지정만으로 판단 </li></ul></ul><ul><ul><li>현재까지는 초기라 큰 문제가 없음 </li></ul></ul><ul><li>신뢰성 확보 보안책 </li></ul><ul><ul><li>킬 스위치 </li></ul></ul><ul><ul><ul><li>구글이 사용자 폰에 저장된 어플 삭제 가능 </li></ul></ul></ul><ul><ul><ul><li>삭제된 어플에 대해 24 시간이내 환불 </li></ul></ul></ul><ul><ul><ul><li>제한없는 어플 등록에 따르는 보안책 </li></ul></ul></ul><ul><ul><li>복사 방지 기능 지원 </li></ul></ul> / 50 Early Android Device(1.5 Cupcake)
  38. 38. Android Market 장단점 <ul><li>장점 </li></ul><ul><ul><li>공정한 경쟁 환경 제공 </li></ul></ul><ul><ul><li>커뮤니티를 통한 어플리케이션 개선 </li></ul></ul><ul><ul><li>사용자 평가에 기반한 신뢰성 확보 </li></ul></ul><ul><li>단점 </li></ul><ul><ul><li>질 낮은 어플리케이션들 존재 </li></ul></ul><ul><ul><li>악성 프로그램 유포의 잠재적 가능성 존재 </li></ul></ul><ul><ul><li>개발자와 사용자에게 모든 책임 전가 </li></ul></ul><ul><li>3 rd 파티 어플리케이션 스토어의 가능성 </li></ul><ul><ul><li>이통사별 안드로이드 마켓 존재 </li></ul></ul><ul><ul><ul><li>SKT T 스토어 </li></ul></ul></ul><ul><ul><ul><li>KT 올레 스토어 </li></ul></ul></ul> / 50 Early Android Device(1.5 Cupcake)
  39. 39. Beyond Phone <ul><li>반스앤노블스의 눅 (NOOK) </li></ul><ul><ul><li>Wi-Fi(802.11 b/g) </li></ul></ul><ul><ul><li>3G network </li></ul></ul><ul><ul><li>E-Ink </li></ul></ul><ul><ul><li>3.5 inch cholor touchscreen LCD </li></ul></ul><ul><li>Settop Box </li></ul><ul><ul><li>현재 안드로이드로 이용한 Settop Box 개발이 진행중임 </li></ul></ul><ul><ul><li>TV Storm/Alticast </li></ul></ul><ul><li>PMP 포털블 미디어 플레이어 </li></ul><ul><ul><li>Zii Egg </li></ul></ul><ul><li>인터넷 타블렛 </li></ul><ul><li>데스크폰 </li></ul><ul><ul><li>Glass Platform </li></ul></ul>
  40. 40. 4. Oracle sues Google
  41. 41. Java 2 Platform 09/30/10 저작권자 (c) 아로마 소프트 2001
  42. 42. Android & J2ME & J2SE Relation
  43. 43. Android Core Library
  44. 44. 관련 기사 <ul><li>관련기사 </li></ul><ul><ul><li>안드로이드 , 오라클의 임베디드 자바사업에 위협 </li></ul></ul><ul><ul><ul><li>http://www.idg.co.kr/newscenter/common/newCommonView.do?newsId=62383 </li></ul></ul></ul><ul><ul><li>오라클의 구글 상대 특허 소송 , 어떻게 볼 것인가 ... 삼섬 , LG 전자에 불똥튈수도 </li></ul></ul><ul><ul><ul><li>http://www.ddaily.co.kr/news/news_view.php?uid=67112 </li></ul></ul></ul><ul><ul><li>오라클 - 구글 안드로이드 소송의 최종 승자는 MS(?) </li></ul></ul><ul><ul><ul><li>http://www.bloter.net/archives/36832 </li></ul></ul></ul><ul><ul><li>Oracle sues Google over Android and Java </li></ul></ul><ul><ul><ul><li>http://news.cnet.com/8301-30684_3-20013546-265.html </li></ul></ul></ul><ul><ul><li>Update: Oracle sues Google over Java use in Android </li></ul></ul><ul><ul><ul><li>http://www.computerworld.com/s/article/9180678/Update_Oracle_sues_Google_over_Java_use_in_Android </li></ul></ul></ul><ul><ul><li>( 번역 ) 오라클의 안드로이드 소송 : 악의 판도라 상자 </li></ul></ul><ul><ul><ul><li>http://blog.gegogi.com/?mid=blog&document_srl=4914900 </li></ul></ul></ul>
  45. 45. 주요 내용 <ul><li>모두 7 개의 추정되는 특허 침해가 있으며 , 모두가 소프트웨어 프로세스 특허 </li></ul><ul><ul><li>Protection Domains to Provide Security in a Computer System (2000) </li></ul></ul><ul><ul><ul><li>컴퓨터 시스템의 보안을 위한 보호 도메인 </li></ul></ul></ul><ul><ul><li>Controlling Access to a Resource (2000) </li></ul></ul><ul><ul><ul><li>리소스에 대한 접근 제어 </li></ul></ul></ul><ul><ul><li>Method and Apparatus for Preprocessing and Packaging Class Files (1999) </li></ul></ul><ul><ul><ul><li>클래스 파일에 대한 전처리와 패키징 방법과 장치 </li></ul></ul></ul><ul><ul><li>System and Method for Dynamic Preloading of Classes through Memory Space Cloning of a Master Runtime System Process (2008) </li></ul></ul><ul><ul><ul><li>마스터 런타임 시스템 프로세스의 주소 공간 클로닝을 통한 클래스의 동적 로딩 시스템과 방법 </li></ul></ul></ul><ul><ul><li>Method and Apparatus for Resolving Data References in Generate Code (2003) </li></ul></ul><ul><ul><ul><li>생성된 코드에서의 데이터 참조 해석을 위한 방법과 장치 </li></ul></ul></ul><ul><ul><li>Interpreting Functions Utilizing a Hybrid of Virtual and Native Machine Instructions (2005) </li></ul></ul><ul><ul><ul><li>가상 & 네이티브 기계어 융합을 이용한 함수 해석 </li></ul></ul></ul><ul><ul><li>Method and System for Performing Static Initialization (2000) </li></ul></ul><ul><ul><ul><li>정적 초기화를 위한 방법과 시스템 </li></ul></ul></ul>
  46. 46. References <ul><li>[1] Google Android Site, http://www.android.com/ </li></ul><ul><li>[2] HTML 5, http://www.android.com/ </li></ul><ul><li>[3] Java Developer Site, http://www.oracle.com/technetwork/java/index.html </li></ul><ul><li>[4] Google IO site, http://code.google.com/intl/ko-KR/events/io/2010/sessions.html#Android </li></ul> / 50

×