Top Banner
Taking the Ks off your APKs 19MB 7.5MB
33

Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Aug 15, 2015

Download

Technology

DroidConTLV
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Taking the Ks off your APKs

19MB 7.5MB

Page 2: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Hello!I am Rotem Mizrachi MeidanAndroid Infra @EverythingMe

@rotemmiz

Page 3: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

EverythingMeLauncherOne tap access to everything you need - people, apps & content.

Internal SDKs- contextual engine- discovery engine

In active development for 2+ years

Page 4: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

We weren’t paying attention

Page 5: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Wake up!

▷ Features added▷ 10+ devs, 1 cup▷ Native libs and code▷ 450,459 lines of code (~)

Page 6: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Facing Reality 19MB

Page 7: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19MB is TOO MUCH for any app

Especially one that grows globally -data plans, slow network, etc..

Reality

Page 8: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

CHARGE!

Page 9: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

18

Time

18

15

14 1413

Universal size 19 to 13

MB

Page 10: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

18

15

1110

87.5

Time

User-facing size 19 to 7.5

MB

Page 11: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

18

15

1110

87.5

Time

MB

Starting point

Page 12: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

18

15

1110

87.5

Time

MB

Proguard

Page 13: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Proguard basics

Page 14: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Recat

Page 15: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Recat

Page 16: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

15

1110

87.5

Time

MB

Split by CPU arch. (native code split)18

Page 17: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Native code split

Page 18: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

1110

87.5

Time

MB

Remove native lib (realm)18

15

Page 19: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Should I use native libs ?

●●

Page 20: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Seeking a solution

Page 21: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

DB gets/puts Benchmark

Page 22: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

DB gets/puts Benchmark

Page 23: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

DB gets/puts Benchmark (HTC One M7)

get put

Page 24: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

108

7.5

Time

MB

18

15

11

Page 26: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

87.5

Time

MB

Split by density /form factor

18

15

1110

Page 28: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Splits:revisited20 phone APKs

20 tablet APKs

Google Play Developer Console

Page 29: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

19

7.5

Time

MB

PNGQuant

18

15

1110

8

Page 30: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

PNGQuant

https://pngquant.org/

Page 31: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Can’t improve what you can’t measure

Page 32: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Metrics with redash

Page 33: Taking the Ks off your APKs - Rotem Mizrachi-Meidan, Everything.me

Thanks!We’re HIRING!

[email protected]@everything.me

Android DevelopersAutomation Developers