Yes, the monolithic structure of the Play Service jar sucks for the reasons you mention. However you can generate a new jar from it with jarjar, extracting only the classes you need and their dependencies. I had to do it for a project that otherwise would hit the 64K dex limit.
On Friday, 7 February 2014 22:14:50 UTC+1, Jeff Campbell wrote: > > We have an app that depends on a lot of libraries, and recently we wanted > to integrate Google Maps into our application. We learned that we would > have to add the following dependency to our app: > > compile 'com.google.android.gms:play-services:4.1.32' > > Before adding this dependeny, our app had about a 40k method count. After > adding this dependency our method count jumped to about 50k (about 10k > methods added to our apk!). And, it seems that with every new version of > this dependency it grows more and more (we noticed about a 2k growth in the > last update). > > I know that this dependency contains a LOT of different types of services > which include things we don't even use (which all contribute to the 10k > method count). I know that I can use Proguard to strip out un-needed > methods, but in a development environment this just slows down build time, > and can make debugging issues difficult. > > Could the Google Play Services be divided into seperate aar projects? > Example: > > play-services-core (required by all... assuming that there is some shared > code) > play-services-maps > play-services-games > play-services-ads > play-services-plus > play-services-wallet > etc.... > > Doing this would reduce the risk of apps hitting the 65k method limit cap > (seems crazy that a Google library takes 15% of the 65k limit of any single > app) > > Thanks, > Jeff > > > -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en --- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

