Hi All,
Does anyone know how to resolve the 64K reference (dex) issue when creating APKs? I've implemented Appodeal, flurry, iab and facebook plugins in our game. However, they exceed the reference limit permittted.
Is it possibly to use multidex (split the app)? I did try it, but I got no where quickly. I also tried ProGuard, but I don't think Gideros supports it.
Alternatively, is anyone using a good ad mediation network?
Any advice would be much appreciated.
Comments
https://developer.android.com/studio/build/multidex.html
Fragmenter - animated loop machine and IKONOMIKON - the memory game
btw to my experience appodeal is the best mediation i've tried for now (compared to heyzap, fyber and supersonic)
I contacted their support. The guy that helped me did not know anything about Gideros.
(http /stackoverflow.com/questions/4520822/is-there-a-quick-way-to-delete-a-file-from-a-jar-war-without-having-to-extract)
and remove some excessive classes from there. For example, drivers, measurement, fitness and other similiar classes looks like good candidates to be excluded from google-play-services.jar. By this way it's possible to reduce method count drastically (from 64k to ~40k)
I've never did this for gideros but for others cases did, and it worked perfectly. I'm pretty sure there won't be any problem for gideros too.
https://developers.google.com/android/guides/setup#split
Rather than adding:
compile 'com.google.android.gms:play-services:9.0.0'
to the gradle build file, I just add the following:
compile "com.google.android.gms:play-services-auth:9.2.0"
compile "com.google.android.gms:play-services-base:9.2.0"
compile "com.google.android.gms:play-services-identity:9.2.0"
compile "com.google.android.gms:play-services-location:9.2.0"
compile "com.google.android.gms:play-services-ads:9.2.0"
compile "com.google.android.gms:play-services-places:9.2.0"
compile "com.google.android.gms:play-services-games:9.2.0"
** compile "com.google.android.gms:play-services-safetynet:9.2.0"
compile "com.google.android.gms:play-services-wallet:9.2.0"
** not sure if this is required. I haven't tested
excluding google wear / maps etc.
I hope this helps.
In gradle (module.app) you need 2 new entries, one in android{} and one in dependencies{}...
Likes: totebo, simwhi
Likes: antix