I wanted to bump this topic again.
Now that we’ve got the new admob plugin, gpgs and android dependency system, (and whatever else similarly related), and all of them fighting for multidex support, a formerly “simple little game” now spans 3 dex files, totalling 4.1M (in compressed .dex form, ~38M as extracted classes).
Given the more-or-less static binary lib size (which has been sitting at or around ~4.5M for a while now), and the app’s own more-or-less static assets (which also just happen to be right around 4.5M), I used to be able to build a ~12M apk (4.5M lib + 4.5M assets + 1.5M dex + 1.2M res + trivial misc). Present-day builds are about 14.7M.
The bulk of this appears to be gms (google mobile services) which is apparently sooo big in and of itself that it’s gotta be spread across two of those dex’s. (presumably hits the 64k limit) The android support library is another big contributor at ~7.1M extracted.
I realize that by including admob, com.google.android.gms.ads will be coming along for the ride too. And I realize that the never-ending clamour of your developer community for new features must lead to some bloat over time too.
But is all of this _ really _ necessary?