Infeasible
Status Update
Comments
ch...@google.com <ch...@google.com> #2
Sorry, this tracker is for issues with the Android OS only. Please use https://support.google.com/ to obtain support for Google products or services.
sc...@gmail.com <sc...@gmail.com> #3
I've searched for correct issue tracker for 15 minutes and wasn't able to find one. The link you gave doesn't help too.
Even Googlers on your support forum don't know where is the issue tracker for Google Play Serviceshttps://productforums.google.com/forum/#!topic/play/dZBSTcEuboA;context-place=topicsearchin/play/google$20play$20services$20issue$20tracker .
Please reopen this issue here or in the right place because basically it's going to /dev/null now.
Even Googlers on your support forum don't know where is the issue tracker for Google Play Services
Please reopen this issue here or in the right place because basically it's going to /dev/null now.
ch...@google.com <ch...@google.com>
je...@google.com <je...@google.com> #4
Sorry, there doesn't seem to be an appropriate place to report bugs with Play Services. But they aren't part of AOSP Android so there's literally no point raising it here - we can't provide help or support for something we don't have the source of.
ta...@planner5d.com <ta...@planner5d.com> #5
I can confirm this issue - 100+ dex files in APK and NoClassDefFound errors. I have reviewed ClassLoader and printed DexFile.entries() and there were lots of missing classes(for example android.support.v4.util.*).
I also can supply APK if needed.
I can reproduce this on all Android 5.0 devices I have. This is not instant run issue, also issue is gone if I switch to minSdkVersion 16 (because then only 3 dex files are generated)
Here is important part of build.gradle:
compileSdkVersion 24
buildToolsVersion "24.0.0"
defaultConfig {
applicationId appId
targetSdkVersion 24
versionCode versionNumber
versionName versionTitle
multiDexEnabled true
vectorDrawables.useSupportLibrary true
}
dexOptions {
jumboMode false
javaMaxHeapSize "6g"
}
productFlavors {
production {
minSdkVersion 16
}
temprorary {
minSdkVersion 21
}
}
I also can supply APK if needed.
I can reproduce this on all Android 5.0 devices I have. This is not instant run issue, also issue is gone if I switch to minSdkVersion 16 (because then only 3 dex files are generated)
Here is important part of build.gradle:
compileSdkVersion 24
buildToolsVersion "24.0.0"
defaultConfig {
applicationId appId
targetSdkVersion 24
versionCode versionNumber
versionName versionTitle
multiDexEnabled true
vectorDrawables.useSupportLibrary true
}
dexOptions {
jumboMode false
javaMaxHeapSize "6g"
}
productFlavors {
production {
minSdkVersion 16
}
temprorary {
minSdkVersion 21
}
}
ta...@planner5d.com <ta...@planner5d.com> #6
Just an update - on Android 6 devices same APK works without problems
je...@google.com <je...@google.com> #7
I am not sure we can fix this reliably. The issue is that if we were to merge all predexed libraries like I suggested in #6, it would end up creating multiple dex files for the merged libraries with split java packages. This has been an issue prior to N as the dalvik verifier can fail when split java packages are present in multiple dex files.
The "only" thing I can suggest would be to have some preprocessing task to merge some libraries making sure you stay below 65K. Merge enough libraries so you end up below the 100 dex files limit.
This is not awesome to say the least but there does not seem to be alternatives to would reliably work in all cases.
The "only" thing I can suggest would be to have some preprocessing task to merge some libraries making sure you stay below 65K. Merge enough libraries so you end up below the 100 dex files limit.
This is not awesome to say the least but there does not seem to be alternatives to would reliably work in all cases.
Description
This is reproducible under the following conditions for us.
Android gradle plugin 1.5.0 or 2.0.0-beta2
minSdkVersion is 21 or greater. Setting minSdkVersion to 19 makes the issue go away.
The device or emulator is running API 21 or 22. It doesn't seem to be a problem in API 23
100 or more classes.dex files are packaged in the apk.
Classes that are included in classes(100+).dex throw a ClassNotFoundException or NoClassDefFoundError when they are accessed in the app.
Classes that are in classes.dex or classes(2-99).dex work just fine when referenced.