4. Mozilla Mobile
• The Web as Mobile Development Platform
• Desktop 과 Mobile 에서 같은 웹을 경험
Future Web Forum 2009 4
5. Mozilla Mobile 의 첫걸음
• 2004 년 Minimo Project 시작 (Doug Turner)
• 2007 년 0.2 버전으로 종료
• Firefox2.0 기반 XUL 사용
http://www-archive.mozilla.org/projects/minimo/
Future Web Forum 2009 5
6. Nokia Maemo MicroB
• Firefox 3.0 alpha6 기반
• Maemo 4.0 지원
• N810 기본 탑재
• XUL 제거 / Flash 지원
Future Web Forum 2009 6
7. Mozilla Mobile 시작
• 2007 년 10 월 9 일 블로그로 공식 시작을 알림
– http://blog.mozilla.com/schrep/2007/10/09/mozilla-a
• Mobile Team 구성
– Openwave, France Telecom 에서 전문 인력 영입
– Windows Mobile 개발자 채용
– Minimo 개발자 참여
Future Web Forum 2009 7
8. Fennec 의 개발 목적
• Mobile 용 오픈 소스 브라우저 엔진 제공
– Mobile 에 최적화
– 표준 기반
– 누구나 브라우저 개발 가능
• Mobile 커뮤니티 성장
• Mobile Web Application 개발 지원
– 필요한 문서 , 도구 제공 (DOM Inspector)
• Desktop 과 Mobile 이 함께 발전
– Mozilla 코드 및 기능 공유
Future Web Forum 2009 8
9. 설계 원칙
• Firefox 와 가능한 가깝게
• 빠른 성능
• 단순함
• Device 기능 활용
• 작은 화면 활용
• * 터치 인터페이스 지원
Future Web Forum 2009 9
24. Add-ons 지원
• Fennec 에서 바로 Add-ons 검색 및 설치 가능
• Firefox Add-ons 수정하여 적용 가능
Future Web Forum 2009 24
25. Add-ons for Fennec
• 16 개 Add-ons 개발됨
Add-ons 예
Weather Channel
URL Fixer
No Script
Wikipedia
InstantTweets
TubeStop
DOM Inspector
https://addons.mozilla.org/en-US/fennec/collection/fennec-amo
Future Web Forum 2009 25
26. Geolocation 지원
• 서버에 위치 정보 전송
• 위치 기반 서비스 제공 받음
• Firefox 3.5 Beta4 와 함께
지원
http://en-us.www.mozilla.com/en-US/firefox/geolocation/
Future Web Forum 2009 26
27. Weave 연동
• Sync Bookmarks
• Sync Tabs
• Sync History
• Sync Passwords
• Sync Preferences
https://labs.mozilla.com/blog/2009/06/weave-0-4-0-released/
Future Web Forum 2009 27
28. Weave add-on for Fennec
https://addons.mozilla.org/en-US/fennec/addon/10868
Future Web Forum 2009 28
30. Device API
– Geolocation, Camera Access
– Phone Call
– SMS Send/Receive
– Mouse Pressure, Local File Access
– Accelerometers, Microphone
– Ambient Noise, Ambient Light
– Signal Strength
– Haptics, LED
– Wheel Key, TV Out
Future Web Forum 2009 30
31. OS & Devices 지원
• OS 지원
– Linux (Maemo 4.0, LiMo)
– Windows Mobile 6.1
– Symbian ( 개발 중 )
• Devices 지원
– Nokia Maemo N810
– HTC Touch Pro
– Samsung Omina
Future Web Forum 2009 31
33. 웹 페이지 출력
• Fullzoom 성능 문제
• Canvas Element 에
웹페이지 출력
• Zoom in/out 성능
향상
https://wiki.mozilla.org/Mobile/Fennec/Architecture
Future Web Forum 2009 33
34. MozAfterPaint
변경 부분만 반영
변경
• Ajax 컨텐츠의 경우 , 특정 영역에 변경 발생
• 웹 페이지가 갱신될 때 , MozAfterPaint 이벤트 발생
• 변경이 필요한 영역 정보를 받음
• Firefox 3.1 에 추가됨
https://developer.mozilla.org/web-tech/2008/10/13/mozafterpaint/
Future Web Forum 2009 34
35. Tile Cache 지원 전
• 일정 영역을 그린 후 메모리에 보관
• 해당 영역을 벗어나면 전체 다시 그리기
http://froystig.wordpress.com/2009/08/20/rendering-with-tiles-in-fennec/
Future Web Forum 2009 35
36. Tile Cache 지원
• Viewport 를 tile 로 나눔
• 한번 그린 영역은 보관
• 보이지 않는 주변 영역을 미리 그림
http://froystig.wordpress.com/2009/08/20/rendering-with-tiles-in-fennec/
Future Web Forum 2009 36
37. 메모리 단편화 문제
• Fennec Pre alpha for Windows Mobile (2009 2.10)
• Heap 메모리 공간의 단편화 문제
• Windows CE malloc 대신 Jemalloc 을 사용
http://blog.pavlov.net/2008/03/11/firefox-3-memory-usage/
Future Web Forum 2009 37
38. JIT (Just in Time Compiler) 지원
Tracemonkey
바이트
컴파일러 코드 인터프리터
자바
스크
바이트 바이트
립트 파서 Tracer
코드 생성 코드 실행
Hot
Spot
JIT
기계어코드 생성
http://www.gyuyoung.net/entry/Tracemonkey-Big-Picture
Future Web Forum 2009 38
39. Tracemonkey 성능 결과
• ARM 아키텍처에 최적화됨
http://blog.vlad1.com/2008/09/11/tracemonkey-coming-to-a-pocket-near-you/
Future Web Forum 2009 39
40. 다양한 Device 지원
• 키보드 지원
– 옴니아 : 키보드 없음 (Full touch phone)
– 미라지 (i780) : 하드웨어 키보드 지원
– HTC Touch Pro : Slide-out 키보드 지원
• 서로 다른 Device API
• 가속도계 (Accelerometer) 지원
– SmiAccelerometerGetVector (Samsung)
– HTCSensorGetDataOutput (HTC)
• Slide-out 키보드 상태
– SmiSliderGetState (Samsung)
– API 없음 (HTC)
Future Web Forum 2009 40
41. Samsung Windows Mobile SDK
• 다양한 Device API 공식 지원
http://innovator.samsungmobile.com
Future Web Forum 2009 41
42. 모든 Device 지원은 ??
• 커뮤니티의 협조 필요
http://groups.google.com/group/mozilla.dev.platforms.mobile?lnk=
Future Web Forum 2009 42
43. 향후 계획
• Maemo
– 2009 년 내 , 정식 릴리스
• Windows Mobile
– 2009 년 내 , Maemo 용 출시 후 , 정식 릴리스
• Symbian
– 2010 년 정식 릴리스 예정
• Android
– 검토 중
• iPhone OS
– Apple 이 정책을 바꾸면 , 개발 가능
http://lifehacker.com/5334434/mozilla-vp-on-what-firefox-mobile-means-for-your-phone
Future Web Forum 2009 43
44. Fennec 의 미래
Thunderbird Phone
Fennec Widget Facebook Twitter
Mobile Application
XUL Runner for Mobile
Device APIs (Geolocation, Camera, Phone, Accelerometer,
Orientation…)
Mobile Devices
• Mobile Application Development Platform
Future Web Forum 2009 44
45. 참여하세요 !
• http://wiki.mozilla.org/mobile
• http://bugzilla.mozilla.org
Future Web Forum 2009 45
46. 참고
• http://wiki.mozilla.org/mobile
• http://en.wikipedia.org/wiki/Minimo
• http://starkravingfinkle.org/blog/2009/03/fenne
Future Web Forum 2009 46