New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[TIMOB-25597] Android: Fixed bug where multidexed apps crash on startup on Android 4.x #9694
Conversation
…up on Android 4.x - Fixed "_build.js" to create main dex class list if the min API Level is less than 21, not the target API Level. * Needed since Android 4.x does not support multidexed apps. - Modified main dex class list to not include external module classes. * Significanlty reduces classes added to main dex list. Needed for anything using Google Play Services (adds too many APIs). * Modified app class template to init modules via reflection instead since module classes might not be in main dex file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CR: PASS
Generated by 🚫 dangerJS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CR: PASS
@jquick-axway , I get this error when I run with the fix on all android versions:
Studio Ver: 5.0.0.201712081732 |
- Added Android "gradle" build template. * Currently used to acquire/run newest ProGuard version. (Android SDK's ProGuard is old and doesn't support Java 8.) * Not used to build Android apps, yet. - Added new "proguard.gradle" script. * Downloads/acquires newest ProGuard version via maven. * Can be used run ProGuard via gradle instead of via "java" command and the ProGuard JAR. * Accepts multiple ProGuard configuration files. (JAR version does not support this.) - Fixed multidex ProGuard usage to work on Windows. * Was using a ':' colon as a file/path array separator instead of a ';' semicolon.
Updated PR. |
@jquick-axway , the build in jenkins is failing at linting. Can you please check. |
FR Passed. No crash seen after launch on android 4.X. Studio Ver: 5.0.0.201712081732 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Passed FR on Windows. Details are in back port version.
JIRA: https://jira.appcelerator.org/browse/TIMOB-25597
Notes:
TiApplication
class' call toMultidex.install()
gets invoked first. OnlyApplication
derived class and the classes it used must be in main dex file.Test:
Run the test attached to TIMOB-25597 on: