1 / 19

HybridApp 자료 조사 knight76.tistory.com

HybridApp 자료 조사 knight76.tistory.com. Background. Background of Application. 플랫폼별 이슈 ( iOS , Android). Device 별 이슈 ( 삼성 , LG …). 모든 버전에서 동작 가능한 어플 또는 여러 벌의 어플을 개발 . - Porting Cost 증가 - 유지보 수 Cost 증가. 버전 별 이슈 (Android 2.3.3, 3.1 iOS 3, 4).

hija
Télécharger la présentation

HybridApp 자료 조사 knight76.tistory.com

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. HybridApp자료 조사 knight76.tistory.com

  2. Background

  3. Background of Application 플랫폼별 이슈 (iOS, Android) Device 별 이슈 (삼성, LG …) 모든 버전에서 동작 가능한 어플 또는 여러 벌의 어플을 개발 - Porting Cost 증가 - 유지보수Cost 증가 버전 별 이슈 (Android 2.3.3, 3.1 iOS 3, 4) • iOS, Android 발생 이전의 기존 핸드폰/TV시장과 똑같은 상황이 벌어지고 있음

  4. 대안 플랫폼별 이슈 (iOS, Android) One Source, Multi-platform Web 과 Native 기반에서 동작하는 어플 Device 별 이슈 (삼성, LG …) HybridApp (Hybrid Mobile WebApp) 버전 별 이슈 (Android 2.3.3, 3.1 iOS 3, 4)

  5. Porting 관점 App App 넷플릭스 기존 iOS 4 Android 2.3.3 Web App 배포 단위 Device Device WebKit Porting Glue App App iOS 5 Android 3.1 Device Device Device Device Device 오픈 소스인 Webkit엔진이 동작되도록 Porting Layer에 새로운 Device만 포팅만 해서 사용하도록 함 * 참고 : 블루레이, DVD는 DTV java 플랫폼을 이용하고 있음 각플랫폼 별로 신경 써야할 내용이 너무 많음

  6. Porting 관점 HybridApp (Hybrid Mobile WebApp) = NativeApp + 모바일Web HTML5 + JavaScript + CSS WebKit WebKit Native Code (Object C) Native Code (Java) Android App iOS App • 1. Device API나 비공유 부분은 각각의 플랫폼 별로 개발해야함 • 2. WebKit을 사용하여 모바일Web을 NativeApp에 적재함 • 모바일Web 부분은 HTML5 기반으로 개발되므로, 모든 플랫폼에서 공유 가능

  7. Porting 관점 • Mobile WebApp개발 • NativeApp으로 어플리케이션을 개발하는 것이 어려움 • 모바일Web Browser에서는 HTML5를 비교적 많이 지원하고 있음 • 단점 : Mobile WebApp은 카메라, 마이크, 파일 등 Device 접근에 제약이 있음 • HybridApp(Hybrid Mobile WebApp) • = NativeApp+ 모바일Web • 아직 표준화된 Device API 부재로 인해서 모바일Web의 Device 접근성 제약 극복 • HTML5 + CSS3 + JavaScript을 이용하여 쉽고, 플랫폼 독립적으로 개발 • 단점 : WebKit및 HybridApp Framework의 구조적 문제로 속도가 매우 느림

  8. WebKit

  9. Porting 관점 • WebKit Project : • 웹 컨텐트를렌더링하고, 자바스크립트 오류를 검증 툴을 포함 • Not Brower, Just Engine • BSD-style and LGPL licenses.  • 포팅된 플랫폼 : iOS, 심비안, Google chrome, Safari , Adobe AIR , Android , Amazon Kindle , QT … • MAC OS X system framework version of the engine • Cross Platform C++, 1.8 Million line • Component • WebCore: HTML와 SVG에 대해서 Layout, 렌더링,DOM 파싱 • JavaScriptCore : 자바스크립트 프레임웍 • Drosera :자바스크립트 오류 확인 툴 • Sunspider : 자바스크립트 성능 측정 툴 • WebKit포팅시에는WebCore와 JavaScriptCore만 사용

  10. History Safari Browser KDE Konqueror Browser (Linux) 오픈 소스화 WebCore KHTML library JavascriptCore KJS library Mac OS 로포팅

  11. Architecture QT MAC Windows WebKit Project WebKit API WebCore (HTML 파싱, 렌더링) /platforms JavascriptCore (프레임웍) Porting Glue graphics, network OS

  12. Hybrid App 개발 - HybridApp Framework 이용 - NativeApp에 WebKit적재

  13. Hybrid App Framework • MobileWeb을 NativeApp처럼 만들어 주는 Framework • Mobile Web을 위한 WebKit제공 • Device에 접근 가능한 JavaScript 기반 Device API 제공 • NativeApp과 같이 배포 가능하도록 Packaging 제공 • HTML5 + CSS3 + JavaScript를 사용하여 App 개발 • One Source, Multi Platform 적용 가능 • - JavaScript를 통하여 MobileWeb이 접근하지 못하던 Device에 접근 가능 • 카메라, 마이크, 파일 등 • NativeApp만큼 Deivce연동이 매끄럽지 못함 • Device 연동 UI에도 제약이 많음 • PhoneGap, Titanium, Appspresso등이 유명함

  14. Hybrid App Framework • PhoneGap (http://www.phonegap.com/) • 많이 유명 • WebKit과 자체 Device API 제공 • iPhone, Android, Blackberry, Palm, Microsoft, Symbian) 지원 • Titanium Mobile (http://www.appcelerator.com/) • JavaScript를 Cross-Compiler를 통해 Native Code(Objective-C나 Java)로 변환해 주는 Framework • Javascript가 Native Code로 Invoke • iPhone, Android, BlackBerry 지원

  15. Hybrid App Framework • Appspresso (http://www.appspresso.com/) • 국내사인 KTH에서 개발 • KTH의 푸딩얼굴인식이 Appspresso로 개발됨 • WebKit과 Device API 지원 • Device API는 WAC의 Waikiki 2.0 beta 지원 • 2개 플랫폼(iPhone, Android) 지원

  16. NativeApp에 WebKit적재 HTML5 + JavaScript + CSS WebKit WebKit Native Code Native Code Platform B Platform A

  17. WAC

  18. WAC • WAC (Wholesale Applications Community) • 세계적인 이동통신사와 제조사들이 통합 AppStore구축을 위해 만든 커뮤니티 • WAC Spec을 통해 Device API 표준화를 진행중에 있음(WAC 2.0 나옴 2011년 6월) • Waikiki : WAC에서 개발중인 OS 독립적인 WebApp플랫폼 개발 프로젝트 http://public.wholesaleappcommunity.com/redmine/

  19. Thank You End of Document

More Related