Mobile/Fatfennec: Difference between revisions

Jump to navigation Jump to search
no edit summary
mNo edit summary
No edit summary
Line 10: Line 10:


== Goals ==
== Goals ==
Reduce the Fennec APK size to mitigate issues caused when we take up too much storage space.  This feeds into our Growth and Ecosystem goals, plus it's just a really user-friendly thing to do.
 
"Fatfennec" is the alias for an ongoing project to have Fennec use fewer bytes.
 
That means:
 
* A smaller APK, which is faster to download, doesn't cause upgrade or install failures due to lack of storage (which helps our Growth and Ecosystem goals), and uses less space on disk.
* Smaller runtime burden -- smaller and fewer databases, careful discarding of temporary files, etc.
 
=== APK ===
 
Contributing factors:
 
* Raw quantities of Java. We can reduce this via:
** Conditional compilation for individual SDK versions.
** Removal of antipatterns: {{bug|1039898}}, for example.
** Additional optimizations in ProGuard (e.g., {{bug|1041866}}, {{bug|1041852}}, {{bug|1001713}}).
 
* Raw quantities of JS. We can reduce this via:
** Removing features that we don't use (e.g., Shumway).
** Minifying: {{bug|1039902}}.
** Not shipping JS source at all: {{bug|696095}}.
 
* Assets. We ship:
** > 7MB of fonts.
** A few MB of images, some of which are at DPI levels that will never be used on a particular device.
** More than 50 locales at 120KB each. Not all of these will be functional on every API version.
 
=== Runtime ===
 
To follow.
canmove, Confirmed users
640

edits

Navigation menu