Confirmed users
169
edits
Mixedpuppy (talk | contribs) (Fix link to current build doc) |
|||
(7 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{Admon/important|The | {{Admon/important|Fennec has been replaced by Fenix. The build documentation has moved!|See the most up to date documentation at https://firefox-source-docs.mozilla.org/contributing/build/building_mobile_firefox.html}} | ||
Here is a table of contents of all the in-depth information you might need to find about Firefox for Android development. | Here is a table of contents of all the in-depth information you might need to find about Firefox for Android development. | ||
Line 11: | Line 11: | ||
*[[Mobile/Fennec/Android/Testing|Testing]] | *[[Mobile/Fennec/Android/Testing|Testing]] | ||
*[[Mobile/Fennec/Android/CommonTips|Common tips & how-to's]] | *[[Mobile/Fennec/Android/CommonTips|Common tips & how-to's]] | ||
*[[Mobile/Fennec/Android/Multilocale_Builds|Multilocale Builds]] - how to build an apk containing multiple languages (instead of just en-US by default). | |||
*[[Mobile/Fennec/Android/Development/Addons|Useful addons for development (e.g. copy profile)]] | *[[Mobile/Fennec/Android/Development/Addons|Useful addons for development (e.g. copy profile)]] | ||
*[[Mobile/Fennec/Android/AdvancedTopics|Advanced topics (e.g. special build configs & advanced debugging)]] | *[[Mobile/Fennec/Android/AdvancedTopics|Advanced topics (e.g. special build configs & advanced debugging)]] | ||
Line 16: | Line 17: | ||
*[[Mobile/Triage|Triage]] | *[[Mobile/Triage|Triage]] | ||
*[[Mobile/Metrics|Metrics]] | *[[Mobile/Metrics|Metrics]] | ||
*[[Mobile/Fennec/Android/png_optimisation|png optimisation]] - a guide on how to prepare png and raster images for landing in the tree, in order to minimise their size. This includes details on webp conversion, when applicable. | |||
=== App and development overview === | |||
* [[Mobile/Fennec/Android/App_Structure|App Structure]]: Fennec is a combination of Java frontend code, Javascript glue and display code, and C++ rendering code. Here's a brief 9000m (30'000ft) overview of what each of those parts does. | |||
** [[Mobile/Fennec/Android/Build_Systems|Build Systems]]: Our app structure results in a complex build process. Moreover, we are in the process of migrating our builds from a custom (Makefile based) build, to using Gradle for the frontend/Java portions of our app. This is a brief description of our parallel build systems and what we're trying to achieve in the future. | |||
=== Feature development === | === Feature development === | ||
Line 24: | Line 30: | ||
=== Test results === | === Test results === | ||
*[https://scan.coverity.com/projects/firefox-mobile Coverity static analysis] | *[https://scan.coverity.com/projects/firefox-mobile Coverity static analysis] | ||
Line 33: | Line 38: | ||
=== General developer resources === | === General developer resources === | ||
*[https://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/index.html Mercurial for Mozillians] | *[https://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/index.html Mercurial for Mozillians] | ||
*[https:// | *[https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html Mozilla Phabricator User Guide] | ||
=== Crash Stats === | |||
* The crash-stats page lives at https://crash-stats.mozilla.com/home/product/FennecAndroid | |||
** Be careful to select "'''FennecAndroid'''" under the product dropdown to see Firefox on Android crashes. | |||
*** Nightly has the name XX.0a1 (e.g. 52.0a1) | |||
*** Aurora has the name XX.0a2 (e.g. 51.0a1 - the number is one lower than nightly) | |||
*** Beta is XX.0bN (e.g. 50.0b12). N is increased every time a new beta is released (usually weekly). | |||
**** '''Note:''' Multiple beta versions can be listed under the versions dropdown, the first one listed might not be the currently released beta. | |||
*** Release is XX.0.N (e.g. 49.0.2). N is increased every time there is a dot release, we usually try to avoid dot releases. | |||
** Beware: a single device (which potentially has a hardware issue and/or a user who has done something strange with their configuration) can result in a crash-spike on nightly, or even aurora - not every crash is something significant. | |||
** You can view devices that are affected by selecting a crash-signature, then going to "Aggregations", followed by clicking on the "Aggregate on" dropdown and selecting "Android device". Some issues might be device or manufacturer specific. | |||
** To create a bugzilla entry for a given crash, open a crash report (if you are viewing a signature, go to "reports" and click on one of the items there). From the crash report search for "Bugzilla - Report this bug in" and select the appropriate module. |