4 ms·
I worked on this at Google. The modern Android app publishing format is designed entirely around being able to slice and dice apps so that users have the minimu
by danpalmer 2y ago
I worked on this at Google. The modern Android app publishing format is designed entirely around being able to slice and dice apps so that users have the minimum downloaded and installed at any point.
Resources, architectures, languages, are only downloaded as needed, but it also gets further into a few domain specific things such as game asset texture compression formats[0], so not only do phones only get the textures they need, but developers can publish in multiple formats so that users can get the best option their device supports.
There's also on-demand code module downloading and installing too. This means you can, for example, pull your registration process out into a separate module, install it at the beginning, but then offload it after the user has registered, reducing the installed size (and reducing the chance your app gets uninstalled for taking up too much space). One developer has a multi-megabyte VOIP module for customer support, but doesn't actually download and install it until a user opens the support screen in the app, which means most users never have it installed.
[0]: https://developer.android.com/guide/playcore/asset-delivery/texture-compression https://developer.android.com/guide/playcore/asset-delivery/...
- saagarjha 2y agoApple also has this too for developers that have large assets that they need on-demand. Code is not allowed to be downloaded.