Upload
pavel-ivanov
View
467
Download
2
Embed Size (px)
Citation preview
Bringing the Open Web to Mobile Devices OS
Bringing The Boot to Gecko project was launched to enable the Open Web as a platform for mobile devices. We’re making innovation possible by driving the development of new Web standards.
Freedom From Proprietary Mobile Platforms OS
Operators and developers write apps and services for one platform and then rewrite
them for others. !
Users who want to buy phones, e-readers and game consoles from different
manufacturers often need to re-purchase apps for each device.
Opportunities for Developers
Using HTML5 and the new Mozilla-proposed standard APIs, developers everywhere will be able to create amazing experiences and apps.
!
Developers will no longer need to learn and develop against platform-specific native APIs.
Customization for OEMs & Operators
OEMs and operators will be able to provide content and services across their entire device
portfolio, regardless of OS. !
And they will be able to customize user experiences, manage app distribution and
retain customer attention, loyalty and billing relationships.
New Web Standards
Firefox OS produces an implementation of these new Web standards to free mobile platforms from the encumbrances of the rules and restrictions of
existing proprietary platforms.
Components
GONK GECKO
GAIA
GONK
Lower level operating system, consisting of a Linux kernel and HAL (Hardware Abstraction Layer).
!
Possibility to expose anything from the hardware to Gecko.
GECKO
The application runtime. The rendering engine in Firefox for HTML5, CSS & JavaScript. Implements a
number of APIs.
GAIA
The user interface, built entirely by HTML5 & Open Web APIs.
FIREFOX OSWebAPIs & UI hacking
Using HTML5, CSS and JavaScript together with a number of APIs to build apps and customize the UI.
Web APIs
The Boot to Gecko project is based entirely on open standards and the source code is open and
accessible to all. Where open standards are missing, we're working with standards bodies and
other vendors to create them.
WebTelephony !Vibration API !WebSMS !Idle API !Screen Orientation !Settings API !Resource lock API !Power Management API !Mobile Connection API !Socket API
Sensor API !WiFi Information API !Device Storage API !Contacts API !Camera API !Peer to Peer API !Open WebApps !WebNFC !WebBluetooth !WebUSB
Network Information API !Battery Status API !Alarm API !Browser API !Time/Clock API !Intents/Activities/Actions !Keyboard/IME API
BATTERY STATUS API
var battery = navigator.mozBatteryif (battery) { var batteryLevel = Math.round(battery.level * 100) + "%", charging = (battery.charging)? "" : "not ", chargingTime = parseInt(battery.chargingTime / 60, 10, dischargingTime = parseInt(battery.dischargingTime / 60, 10); // Set events battery.addEventListener("levelchange", setStatus, false); battery.addEventListener("chargingchange", setStatus, false); battery.addEventListener("chargingtimechange", setStatus, false); battery.addEventListener("dischargingtimechange", setStatus, false); }
Web Apps from Mozilla
Dialer !Contacts !Settings !SMS !Web browser !Gallery !Video Player !Music Player !E-mail (POP) !Calendar
Alarm Clock !Camera !Notes !First Run Experience !Notifications !Home Screen !Mozilla Marketplace !System Updater !Localization Support
Demo App :)
It's time for questions?