Firefox for mobile
Firefox for mobile 45 on Android 2.3
|
|
Developer(s) | Mozilla Corporation Mozilla Foundation |
---|---|
Stable release | 43.0 (December 15, 2015[1]) [±] |
Preview release |
44.0 Beta 8 (January 12, 2016[2][3]) [±]
45.0a2 (December 18, 2015[4]) [±] daily release
|
Written in | C++, XUL, Java, JavaScript |
Operating system | Android 2.3 and above[6][7] |
Type | Mobile browser |
License | MPL |
Website | www |
Firefox for mobile (codenamed Fennec) is the build of the Mozilla Firefox web browser for devices such as smartphones and tablet computers.
Firefox for mobile uses the same Gecko layout engine as Mozilla Firefox. For example, version 1.0 used the same engine as Firefox 3.6, and the following release, 4.0, shared core code with Firefox 4.0. Its features include HTML5 support, Firefox Sync, add-ons support and tabbed browsing.[8]
Contents
Name
The codename used for Firefox for mobile is Fennec. It comes from the fennec fox, a small desert fox (just as the Fennec browser is a small version of Firefox browser). Firefox for Maemo Beta 5, released in 2009, was the first release to have official Firefox branding, with Firefox name and logo.[9]
History
Plugin support was initially disabled by default, removing compatibility with popular web content types such as Adobe Flash.[10] In September 2011, Flash support was implemented in pre-release builds for pre-Honeycomb versions of Android.[11] Flash support for Android 2.x and 4.x has been enabled for most smartphones in version 14.0, while support for Android 3.x may come in a later release.[12]
The browser's version numbering was bumped from version 2.0 to version 4.0 to more closely match desktop releases of Firefox since the rendering engines used in both browsers are the same.[13]
Platforms
Firefox for mobile is available for Android devices running Android version 2.3 and above.[6] Support for Android devices that run Intel x86 processors was added in December 2013.[14]
Official support for the Nokia N900 Maemo device ceased with version 7.[15]
Firefox mobile is available for MeeGo through the third party OpenRepos repository.[16]
An alpha of version 1.1 (1.1 Alpha 1) for Windows Mobile, released on February 19, 2010, is the last build for this operating system.[17][18] Following the Windows Phone 7 announcement and Microsoft's decision not to release a native development kit, as with Android and other systems, development for Windows Mobile was put on hold.[19] If Microsoft releases a native development kit in the future for its Windows Phone OS, then Mozilla will consider again developing Fennec for the platform.[6]
In April 2013, then-Mozilla-CEO Gary Kovacs said that Firefox would not come to iOS as long as Apple required the use of the WebKit layout engine to do so. However, in 2015 Mozilla announced it was moving forward with Firefox for iOS, with a preview release made available in New Zealand in September of that year.[20][21][22]
Tristan Nitot, president of Mozilla Europe, has said that it's unlikely that a BlackBerry OS version will be released, citing BlackBerry's limited operating system as the reason.[23] Mozilla has no plans to develop Firefox for the Symbian platform,[6] or webOS.[6] An unofficial port to WebOS was made, but is no longer maintained as of 2011.[24]
An unofficial port is available for the OpenPandora handheld console.[25]
While desktop versions are not supported, versions for Microsoft Windows, OS X and Linux were available; these versions were intended as a way to give people who do not have a supported operating system the ability to localize, experiment and build add-ons. Firefox Mobile 10.0.2 was the last version available for desktop systems.[26]
Android 4.0 and newer | 46.0.1[27] | 2011–present |
Android 3.0 | 45.0.2[27] | 2011–2016 |
Android 2.3 | 46.0.1[27] | 2011–present |
Android 2.2 (and ARMv6) | 31.0,[28] 31.3.0esr | 2011–14 |
Android 2.1 | 19.0.2 | 2011–13 |
Android 2.0 | 6.0.2 | 2011 |
Maemo | 7.0 | 2010–11 |
MeeGo | 15.0 | 2011–14 |
Firefox OS 2.2 | 35/36/37 | 2015–present |
Firefox OS 2.0 | 31/32.0 | 2013–15 |
There are versions for "modern devices" (Android 4.0 and later) and "legacy devices" (Android 2.3).[29]
Add-ons
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
Firefox for mobile allows installation of themes and extensions.
Reception
The main criticisms[by whom?] of the browser pre-version 14 were slow browsing speed, lack of plugin support and performance issues.[30][31] To address these concerns, Mozilla redesigned the browser in version 14.0, adding Flash support, improving start-up speed, as well as other enhancements.[32] This update dramatically improved Firefox for Mobile. As of September 2014[update], the average user rating of Firefox for mobile on the Google Play Store is 4.4.[33]
Compared to stock Android browser and Chrome on Android, Firefox has a small market share; for the month of November 2015, Firefox for Mobile usage share of all mobile/tablet browsers was just 0.81%.[34] Despite that, Firefox for Android enjoys a high Play Store rating, has over 100 million downloads,[35][36] and continues to be developed, such that the latest version still supports Android 2.3.[37]
In its 2015 Android browser comparison, Spanish software news and reviews site Softonic.com awarded Firefox version 37.0.1 the Best of 2015 nod, with reviewer Fabrizio Benedetti citing good design, efficient memory consumption, the browser's open source nature, and independence.[36]
Security advantages
For various reasons, a number of devices run older versions of Android: some would not be upgraded to newer versions because of insufficient technical knowledge by users, or their lack of access to mobile data; some devices cannot be upgraded because of low system resources, or the manufacturer and telecoms operator have failed to provide an update.[38] People in developing countries and low-income people in advanced economies[38] are less likely to upgrade to newer smartphones with newer built-in Android versions, which may entice them to choose Firefox as the more secure browser, thus contributing to Firefox marketshare.[39]
As of early 2015, Google has stopped issuing its own patches for Android 4.3 and earlier to the WebView browser component and the WebKit rendering engine therein, which are used by the native/stock and often default AOSP browser in a large number of Android devices — thereby shifting the patching responsibility to device manufacturers.[40] In time, the native browser or browser components become outdated, increasingly insecure, and unable to properly render modern websites.[41]
As a workaround, a Google engineer suggested using the separately-installable and updateable Google Chrome or Firefox browsers.[40] In case of Ice Cream Sandwich (4.0.x), a relatively modern major release, Google is to stop supporting that branch of Android with updates to its Chrome browser after Chrome 43, and move up to Android 4.1 as the oldest release supported by Google Chrome.[37][41]
The open-source nature of Firefox has made it possible to maintain its development for operating system versions that are past their product support lifecycle, and has resulted in Firefox having stronger security and better support for modern web standards.[41] This in effect extends the useful lifetime of devices stuck on older major versions of Android.[42]
Forks and code reuse
Fennec FDroid
On 1 February 2015 and beginning with version 35.0,[43] the open-source F-Droid app repository hosts the Fennec F-Droid package. This is a FOSS-only version of the browser, pulled from the unbranded Firefox source code, licensed under MPL2, and based on the latest Firefox releases. Part of the package's name comes from the mobile Firefox's Fennec code name.
Maintainers of this version strive to keep out all proprietary binaries used in Firefox. As of version 38.0.5, the following items have been removed:[44]
- Tests;
- Crash reporter;
- Health reporter;
- Media streaming (requires the non-free play-services library);
- Updater;
- Encrypted Media Extensions (EME) / DRM.
This build was later discontinued.[45]
Adblock Browser
On 20 May 2015, Eyeo GmbH, the maintainers of Adblock Plus, released Adblock Browser 1.0 beta, which is based on Firefox for Android.[46] The browser uses a similar blocking/permitting model as Adblock Plus, wherein acceptable ads are allowed. A major drawback compared to Firefox for Android is Adblock Browser's lack of support for Firefox Sync.
Initial reviews have been mixed: On one hand, users would be happy to have less ads and resource consumption on their devices; on the other hand, web services, publications, content creators and bloggers rely on advertisements for their revenue and income.[47][unreliable source?]
Adblock Browser 1.0 was released on 7 September 2015. It's compatible with Android 2.3 or greater, and has about the same system requirements as Firefox for Android.[48]
Orfox
On 30 June 2015, The Guardian Project announced a stable alpha of Orfox, the new mobile counterpart of the Tor Browser. Orfox is built from Fennec (Firefox for Android) code and the Tor Browser code repository, and is given security hardening patches by the Tor Browser development team. Some of the Orfox build work is based on the Fennec F-Droid project.[49]
The project removed in Orfox the WebRTC component and Chromecast connectivity, and app permissions to access the camera, microphone, contacts (address book), location data (GPS et al.), and NFC.[49][50]
Orfox is to supersede the Orweb browser project, which used the WebView engine.[49]
LibreOffice
Firefox for Android (Fennec) front-end code was taken as a base for the new development in the LibreOffice project for Android (along with the pre-existing cross-platform LibreOffice document engine).[51][52] Further work made that Fennec code the core component of LibreOffice Viewer for Android,[53] which was released on 28 May 2015[54] for Android 4.0 or newer.[52]
Release history
Release dates (Latest release on FTP):
<templatestyles src="Div col/styles.css"/>
- Version 1: January 28, 2010. For Maemo.[55]
- Version 4: March 29, 2011. For Android and Maemo; version number matched with the desktop version.[56]
- Version 5: June 21, 2011. For Android,[57] supports Android 2.0 and higher.[58]
- Version 6: August 16, 2011.[59]
- Version 6.0.1: August 30, 2011.[60]
- Version 6.0.2: September 6, 2011, last version for Android 2.0.[61]
- Version 7.0: September 27, 2011.[62] Supports Android 2.1 and higher and last version for Maemo.[63]
- Version 7.0.1: September 30, 2011.[64]
- Version 8.0: November 8, 2011.[65]
- Version 9.0: December 21, 2011.[66]
- Version 10.0: January 31, 2012.[67]
- Version 10.0.1: February 10, 2012.[68]
- Version 10.0.2: February 17, 2012. Last version available for desktop systems.[69]
- Version 10.0.3: March 13, 2012.[70]
- Version 10.0.4: April 24, 2012.[71]
- Version 10.0.5: June 5, 2012.[72]
- Version 14.0: June 26, 2012, version number matched with the desktop version.[73]
- Version 15.0: August 28, 2012.[74]
- Version 15.0.1: September 10, 2012.[75]
- Version 16.0: October 9, 2012.[76]
- Version 16.0.1: October 11, 2012.[77]
- Version 17: November 19, 2012.[78]
- Version 18: January 8, 2013.[79]
- Version 18.0.2: February 7, 2013.[80]
- Version 19.0: February 19, 2013.[81]
- Version 19.0.2: March 7, 2013. Last version to support Android 2.1.[82]
- Version 20.0: April 2, 2013. Supports Android 2.2 or newer.[83]
- Version 20.0.1: April 11, 2013.[84]
- Version 21.0: May 14, 2013.[85]
- Version 22.0: June 25, 2013.[86]
- Version 23.0: August 6, 2013.[87]
- Version 24.0: September 17, 2013.[88]
- Version 25.0: October 29, 2013.[89]
- Version 25.0.1: November 15, 2013.[90]
- Version 26.0: December 10, 2013.[91]
- Version 26.0.1: December 20, 2013.[92]
- Version 27.0: February 4, 2014.[93]
- Version 28.0: March 18, 2014.[94]
- Version 28.0.1: March 24, 2014.[95]
- Version 29.0: April 29, 2014.[96]
- Version 29.0.1: May 9, 2014.[97]
- Version 30.0: June 10, 2014.[98]
- Version 31.0: July 22, 2014. Last version to support Android 2.2 and ARMv6 chipset; security updates were released through January 2015.[99]
- Version 32.0: September 2, 2014, added support for Firefox OS.[100]
- Version 32.0.1: September 10, 2014[101]
- Version 32.0.3: September 24, 2014[102]
- Version 33.0: October 13, 2014[103]
- Version 33.1: November 10, 2014,[104] celebrating Firefox's 10-Year Anniversary.[105]
- Version 34.0: December 1, 2014[106]
- Version 34.0.1: December 19, 2014
- Version 35.0: January 13, 2015[107]
- Version 35.0.1: February 5, 2015[108]
- Version 36.0: February 27, 2015[109]
- Version 36.0.1: March 6, 2015[110]
- Version 36.0.2: March 16, 2015[111]
- Version 36.0.3: March 20, 2015[112]
- Version 36.0.4: March 21, 2015[113]
- Version 37.0: March 31, 2015.[114] Split releases between API levels for Android 2.3 / 3.0 and newer.[115]
- Version 37.0.1: April 3, 2015[116]
- Version 37.0.2: April 14, 2015[117]
- Version 38.0: May 12, 2015[118]
- Version 38.0.5: June 2, 2015[119]
- Version 39.0: July 2, 2015[120]
- Version 40.0: August 11, 2015[121]
- Version 40.0.3: August 27, 2015[122]
- Version 41.0: September 22, 2015[123]
- Version 41.0.2: October 15, 2015[124]
- Version 42.0: November 3, 2015[125]
- Version 43.0: December 15, 2015[126]
- Version 44.0: January 26, 2016[127]
- Version 44.0.2: February 11, 2016[128]
- Version 45.0: March 8, 2016[129]
- Version 45.0.1: March 16, 2016[130]
- Version 45.0.2: April 11, 2016[131]
- Version 46.0: April 26, 2016[132]
- Version 46.0.1: May 3, 2016[133]
See also
- Mobile browser
- Minimo, a previous project to create a mobile Mozilla browser.
- MicroB, a Mozilla-based mobile browser for Nokia Maemo.
- Opera Mobile
- Opera Mini
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 6.0 6.1 6.2 6.3 6.4 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 27.0 27.1 27.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ https://nightly.mozilla.org/
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 36.0 36.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 37.0 37.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 38.0 38.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 40.0 40.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 41.0 41.1 41.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 49.0 49.1 49.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 52.0 52.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
Wikimedia Commons has media related to Mozilla Fennec. |
- Mobile mozilla wiki page
- Fennec mozilla wiki page
- Firefox Browser for Android on Google Play
- Firefox Android package at the F-Droid repository
- Articles with specifically marked weasel-worded phrases from September 2015
- Articles containing potentially dated statements from September 2014
- Articles lacking reliable references from October 2015
- Pages using div col with unknown parameters
- Commons category link is locally defined
- Gopher clients
- Free and open-source Android software
- Firefox
- Mobile web browsers
- Windows Mobile Standard software
- Pocket PC software
- Gecko-based software
- Web browsers for Android
- Software that uses XUL