Taking the Ks off your APKs
19MB 7.5MB
Hello!I am Rotem Mizrachi MeidanAndroid Infra @EverythingMe
@rotemmiz
EverythingMeLauncherOne tap access to everything you need - people, apps & content.
Internal SDKs- contextual engine- discovery engine
In active development for 2+ years
We weren’t paying attention
Wake up!
▷ Features added▷ 10+ devs, 1 cup▷ Native libs and code▷ 450,459 lines of code (~)
Facing Reality 19MB
19MB is TOO MUCH for any app
Especially one that grows globally -data plans, slow network, etc..
Reality
19
18
Time
18
15
14 1413
Universal size 19 to 13
MB
19
18
15
1110
87.5
Time
User-facing size 19 to 7.5
MB
19
18
15
1110
87.5
Time
MB
Starting point
19
18
15
1110
87.5
Time
MB
Proguard
19
15
1110
87.5
Time
MB
Split by CPU arch. (native code split)18
Native code split
19
1110
87.5
Time
MB
Remove native lib (realm)18
15
Should I use native libs ?
●●
Seeking a solution
DB gets/puts Benchmark
DB gets/puts Benchmark
DB gets/puts Benchmark (HTC One M7)
get put
19
108
7.5
Time
MB
18
15
11
19
87.5
Time
MB
Split by density /form factor
18
15
1110
Splits:revisited20 phone APKs
20 tablet APKs
Google Play Developer Console
19
7.5
Time
MB
PNGQuant
18
15
1110
8
PNGQuant
https://pngquant.org/
Can’t improve what you can’t measure
Metrics with redash
Thanks!We’re HIRING!
[email protected]@everything.me
Android DevelopersAutomation Developers