<div dir="ltr">Hi everyone,<div><br></div><div>So, I’ve just hit the famous 65 K methods count and DEX error as a sweet bonus while updating the application to latest Android 6.0-related dependencies.</div><div><br></div><div>Long story short, I’ve analyzed [1] dependencies [2] for the Hawkular Android Client [3]. Important notice—the application is not that big or complicated.</div><div><br></div><div>Methods count is below.</div><div><ul><li>Various dependencies: 2445.<br></li><li>Java &amp; JavaX: 1684.<br></li><li>Android Support libraries: 12988.<br></li><li>Android: 3081.<br></li><li>Google Play Services: 22022.<br></li><li>Bouncycastle: 10423.<br></li><li>Spongycastle: 10423.<br></li><li>AeroGear: 1210.<br></li><li>Application itself: 1047.<br></li><li>Total: 65346.</li></ul></div><div>This is kind of disappointing. Of course I can start to blame Android Support libraries, but you clearly cannot develop apps these days without using backports and helpers. Google Play Services is a bigger deal. It is a dependency of the AeroGear Push module and you cannot live without it as well, but you can use a modular dependency. I’ve addressed this in an issue [4] which leads to another one [5]. It was fixed (there is Google Play Services 7.8.0 already though), but not released. Bouncycastle and Sprongycastle are related to security and are dependencies of the AeroGear Store module which is a dependency of the AeroGear Authz module. I’m not really sure I need this at all.</div><div><br></div><div>Let’s count again.</div><div><ul><li>The current application: 65346 methods.<br></li><li>The application without Google Play Services and Castles: 22478.<br></li></ul></div><div>The application can be (65346 ÷ 22478 = 2.9) times smaller.</div><div><br></div><div>What do you think about? Is there any chance to ditch these Castle dependencies and release the new Push version?</div><div><br></div><div>Regards,</div><div>Artur.</div><div><br></div><div>[1]: <a href="http://inloop.github.io/apk-method-count">http://inloop.github.io/apk-method-count</a></div><div>[2]: <a href="http://pastie.org/private/27y3igg4imyqfjvs9qz9a">http://pastie.org/private/27y3igg4imyqfjvs9qz9a</a></div><div>[3]: <a href="https://github.com/hawkular/hawkular-android-client">https://github.com/hawkular/hawkular-android-client</a></div><div>[4]: <a href="https://issues.jboss.org/browse/AGDROID-432">https://issues.jboss.org/browse/AGDROID-432</a></div><div>[5]: <a href="https://issues.jboss.org/browse/AGDROID-351">https://issues.jboss.org/browse/AGDROID-351</a></div></div>