• Skip to main content
  • Select language
  • Skip to search
MDN Web Docs
  • Technologies
    • HTML
    • CSS
    • JavaScript
    • Graphics
    • HTTP
    • APIs / DOM
    • WebExtensions
    • MathML
  • References & Guides
    • Learn web development
    • Tutorials
    • References
    • Developer Guides
    • Accessibility
    • Game development
    • ...more docs
B2G OS
  1. MDN
  2. Archive of obsolete content
  3. B2G OS
  4. Firefox OS developer release notes
  5. Firefox OS 2.1 for developers

Firefox OS 2.1 for developers

In This Article
  1. Product features
    1. Radio Interfaces and Network Features
    2. System Features
    3. Core Applications
    4. Settings
  2. New DevTools features
  3. Platform changes and additions in detail
    1. Security
    2. Web API changes
  4. Older versions

This page details the developer features newly implemented in Gecko that are specific to Firefox OS 2.1, plus product features, DevTools features, and other points of interest for the new release.

Note: Firefox OS 2.1's Gecko component is based on Firefox 33/34.

Product features

This section lists various categories of new product features and improvements to existing features.

Radio Interfaces and Network Features

  • Privileged apps can now distinguish between an MVNO and operator using the same MNC/MCC. (bug 1027430.)
  • Firefox OS can now recognize the SIM card regardless of network setting. (bug 1013847.)

System Features

Usage, Network Data & Consumption Control
The Usage app now breaks down individual app network data usage, making it easier to identify data-hungry apps (bug 1033549.)
SD Card Support
Users can now manually mount and dismount SD cards to avoid damage/corruption of file content (bug 945642.) See Settings App > Media Storage for the relevant options.
Firefox OS can now recognize unformatted cards, enabling the user to format and use the card (bug 908916.)
First run experience
If the time can be determined from the network automatically, the user is no longer asked to manually select the time and timezone (bug 1026098.)
The device's connectivity status indicator is now displayed during the first run experience to make the user aware when external data connections are being made (bug 1035250.)
Keyboard
The multi-touch typing experience on Firefox OS has been optimized (bug 985855.)
Browser
The Browser has been integrated into the System, which means that browsing can be done by clicking the Browser icon or just through accessing the universal search and navigation capability.   Apps and browsing tabs are unified to a common experience and exist in the task manager and sheets view (bug 945259 and bug 946452.)
Task Manager
The discoverability of the Task Manager has been improved by the inclusion of a Show Windows option in the Universal Search and Navigation UI (bug 1058096.)
Notifications
CMAS Emergency Warning System messages are now supported and displayed for the user (bug 1023684 and bug 1026685.)
System
The performance and UI for App-to-app Edge Gestures has been improved (bug 1037468.)
Sound
Firefox OS now has a new set of signature default ringtones (bug 1014009.)
Status Bar
The UI of the status bar has been improved with a configurable status bar color (bug 1013913.)
An icon for Sim ToolKit (STK) is now supported and displayed in the status bar when appropriate (bug 824145.)
Home Screen
With the integration of the Browser into the System, the user's previous bookmarks are migrated from the Browser to the Home Screen (for updates from previous OS versions) (bug 945827.)
Users are provided with a short tutorial explaining the bookmark migration from the Browser to the Home Screen (bug 938279.)
The visual design and interaction of the soft Home Button has been improved (bug 1037251, bug 1037261, and bug 1036339.)
Lock Screen
In Case of Emergency (ICE) contacts are displayed on the lockscreen, enabling emergency personnel to contact them (bug 1026682.)
Notifications on the lock screen can be clicked to take the user directly into the notifying app (bug 1023818.)
Dual SIM
Cell Broadcast messages related to multiple SIM cards are now displayed within a common UI (bug 921326.)
NFC
Firefox OS now supports Tap-to-Pay functionality for payments at Point of Sale (bug 979152.)
Tap-to-Pay functionality now supports couponing (EMV+MIFARE) (bug 979154.)
Firefox OS can now be used for NFC Tap functionality (using MIFARE 1k) to pass through gates installed with MIFARE gate controllers (bug 979157.)
WebRTC video calling
When in a WebRTC call, users can now swap between selecting the front and back camera (bug 1033326.)
Media Transfer Protocol
Using the Media Transfer Protocol users can now access content on their device while on a connected PC (bug 922927.) See Settings App > USB Storage > Media transfer protocol (MTP).

Core Applications

Phone (Dialer)
Various accessibility improvements have been added to the Dialer.
A mute button is now available when dial pad is shown during a phone call (bug 1026692.)
When a call ends, a tone is now played to denote disconnection (bug 995938.)
Contacts
Various accessibility improvements have been made to the Contacts app.
When no image is present for a given contact, a default image will now be displayed (bug 1043496.)
Firefox OS users can now set In Case of Emergency (ICE) contacts which will be displayed on the lockscreen. (1026682)
Calendar
The Calendar Day view now starts at 8 AM (bug 1023663.)
When a Calendar event's start date/time is changed, the end date/time is automatically changed to retain the original event duration (bug 977050.)
The Calendar Week view now shows five days by default (bug 1023662)
Messaging
The UI of the Messaging app has been updated and improved. (bug 1030925 and bug 1026690.)
The attachment icon placed closer to the input area and keyboard to make it easier to find. (1026694)
Messaging (Email)
Users can now easily jump to the top of their Email inbox by tapping "Top" or "New Messages" (bug 989810.)
Email UI improvements have been made to notification toasts (bug 1021981), “Show external images” (bug 1043527), “Load more messages” (bug 1043529), and account settings (bug 1043533).
Video
During fullscreen video playback, the Soft home button will now be hidden (bug 1037255.)
System
Various accessibility improvements have been made throughout the OS.

Settings

Network and Connectivity
Users are now able to set a specific Internet APN for roaming data (regulatory requirement). (bug 1024776.) See Settings App > Cellular & Data > APN Settings.
Ringtone Management
Users are now able to transfer ringtones from their SD card to their Firefox OS device. (bug 1027995.) See Settings App > Sound > Manage Tones > plus (+) icon.
Personalization
24 hour time format is now supported. (bug 903683.)
Device
To improve accessibility users can invert the colors displayed on their Firefox OS device. (bug 1016539.) See Settings App > Accessibility > Color Filter > Invert.

New DevTools features

  • The security policy has been changed so that only apps installed via DevTools / WebIDE appear in the WebIDE app dropdown, unless you get higher permissions. Consult our main WebIDE article to learn how.
  • Gecko now features a self-signed cert generator for use by WebIDE Wifi debugging, and other such things (bug 1038991.)

Note: You can always find details of new and upcoming Firefox DevTools by looking at the Mozilla Hacks Developer Tools category.

Platform changes and additions in detail

Note: Our list here includes features most important to Firefox OS. For an expanded list of general Gecko feature additions (which are generally also present in Firefox OS 2.1), consult the Firefox 33 release notes for developers and Firefox 34 release notes for developers.

Security

Firefox OS used to have a "single app per origin" security policy, but this was lifted as of Firefox 34/Firefox OS 2.1 (read this FAQ entry for more information). If you still need to support older versions, consider hosting your apps at separate origins; one strategy is to create different subdomains for your apps.

Web API changes

  • The pairing event handlers of the Web Bluetooth API — BluetoothAdapter.ondevicepaired and BluetoothAdapter.ondeviceunpaired — have been added (see bug 1036234).
  • Updated pairing methods of the Web Bluetooth API have been added (see bug 1036233):
    • Promise<void> BluetoothAdapter.pair (DOMString aAddress)
    • Promise<void> BluetoothAdapter.unpair (DOMString aAddress)
    • sequence<BluetoothDevice> BluetoothAdapter.getPairedDevices
  • The BlueToothClassOfDevice interface has been added (bug 1027504.)
  • The BluetoothDiscoveryHandle interface has been added, along with BluetoothAdapter.startDiscovery and BluetoothAdapter.stopDiscovery (bug 1006314.)
  • The BluetoothPairingEvent and BluetoothPairingHandle interfaces have been added (bug 1033898.)
  • The BluetoothPairingListener interface has been added (bug 1036228.)
  • Support added for CameraControl to use events rather than callbacks, i.e. camera.addEventListener('pictureTaken', function () { ... }) (bug 994912.)
  • Support for the Web Speech API is pending: a patch has been submitted (see bug 1032964.)
  • The FileHandle API has been renamed to MutableFile, and LockedFile has been renamed to FileHandle (bug 1006485.)
  • Media Source Extensions (MSE) are now supported on Firefox OS (bug 1027519.)
  • The logic for launching Firefox OS "engineering mode" has been implemented in Gecko (bug 997564)
  • NFCPeerEvent object now passed in MozNFC.onpeerready; in addition, you can now get a MozNFCPeer object from the event's peer property (bug 1046554.)
  • MozNFCTag has been considerably expanded, with NDEF information available in MozNFCTag.maxNDEFLength, MozNFCTag.isReadOnly, MozNFCTag.ndefType, and MozNFCTag.isFormatable (bug 1074611.)
  • The MozNFCTag.writeNDEF method has had an isP2P property added, to indicate that the request is for a P2P/Tag case (bug 1082452.)
  • The MozNDEFRecord constructor's options have been transferred into a dictionary, MozNDEFRecordOptions (bug 1053732.)
  • Some settings controlled by the Settings API are now gettable/settable by privileged apps. The main use case that inspired this was having 3rd party homescreens being able to get/set wallpaper.image (bug 900551.)
  • The setWifiTethering API has been added to enable/disable Wifi hotspot/tethering (bug 936367.)
  • The Feature Detection API (Navigator.hasFeature) has been implemented and exposed to privileged apps (bug 983502.) This is useful for the Firefox Marketplace, when trying to work out what devices to offer apps to, and in other cases where standard feature detection won't work due to permission levels, etc.
  • A low level UDP datagram socket API is now exposed to web applications (bug 745283.)
  • The TV Manager API has been implemented (bug 998872.)
  • The Telephony.dial() method now returns a promise that resolves to an MMICall object when an MMI code is dialled, not a DOMRequest like it did previously (bug 1080883.)

Older versions

  • Firefox OS 2.0 for developers
  • Firefox OS 1.4 for developers
  • Firefox OS 1.3 for developers
  • Firefox OS 1.2 for developers
  • Firefox OS 1.1 for developers
  • Firefox OS 1.0.1 for developers

Document Tags and Contributors

Tags: 
  • 2.1
  • Firefox OS
  • Release Notes
 Contributors to this page: chrisdavidmills, nerrve, mehmetaergun, parvizmb, satyajeet1234
 Last updated by: chrisdavidmills, Feb 27, 2017, 2:56:48 AM
See also
  1. Build and install
    1. Build and install overview
    2. B2G OS build process summary
    3. Build prerequisites
    4. Preparing for your first build
    5. Building B2G OS
    6. B2G installer add-on
    7. Building B2G OS for Flame on Mac OS X
    8. Choosing how to run Gaia or B2G OS
    9. Compatible Devices
    10. Installing B2G OS on a mobile device
    11. Creating and applying B2G OS update packages
    12. Building and installing FOTA community builds
    13. B2G build variables reference sheet
  2. Porting B2G OS
    1. Porting overview
    2. Porting basics
    3. Porting on CyanogenMod
  3. Developing Gaia
    1. Developing Gaia overview
    2. Running the Gaia codebase
    3. Run Gaia on desktop using Mulet
    4. Understanding the Gaia codebase
    5. Making Gaia code changes
    6. Testing Gaia code changes
    7. Submitting a Gaia patch
    8. Gaia build system primer
    9. Different ways to run Gaia
    10. Make options reference
    11. Gaia tools reference
  4. B2G OS APIs