Obsolete
Status Update
Comments
be...@gmail.com <be...@gmail.com> #2
Please attach a sample project that reproduces your issue.
be...@oxalya.com <be...@oxalya.com> #3
be...@gmail.com <be...@gmail.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit bd065925676170c8453321e970d455fac06b8d3d
Author: Ian Lake <ilake@google.com>
Date: Mon Jan 28 15:47:16 2019
Add ProGuard rules for DrawerArrowDrawable.setProgress()
setProgress() is called via an ObjectAnimator and
therefore needs to be specifically kept when
obfuscating with ProGuard.
Test: tested in sample project attached to bug
Change-Id: I9c420ce728c5cb887d29df9f856bfd31f5bdbcdf
Fixes: 123449431
M navigation/ui/build.gradle
A navigation/ui/proguard-rules.pro
https://android-review.googlesource.com/887876
https://goto.google.com/android-sha1/bd065925676170c8453321e970d455fac06b8d3d
Branch: androidx-master-dev
commit bd065925676170c8453321e970d455fac06b8d3d
Author: Ian Lake <ilake@google.com>
Date: Mon Jan 28 15:47:16 2019
Add ProGuard rules for DrawerArrowDrawable.setProgress()
setProgress() is called via an ObjectAnimator and
therefore needs to be specifically kept when
obfuscating with ProGuard.
Test: tested in sample project attached to bug
Change-Id: I9c420ce728c5cb887d29df9f856bfd31f5bdbcdf
Fixes: 123449431
M navigation/ui/build.gradle
A navigation/ui/proguard-rules.pro
pi...@googlemail.com <pi...@googlemail.com> #5
We've added the appropriate ProGuard configuration and it'll be available in the next release.
As a workaround, you can add the following to your ProGuard configuration:
-keepclassmembers class android.support.v7.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
As a workaround, you can add the following to your ProGuard configuration:
-keepclassmembers class android.support.v7.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
be...@gmail.com <be...@gmail.com> #6
Sure, thanks for the quick fix.
en...@google.com <en...@google.com>
be...@gmail.com <be...@gmail.com> #7
I had to use the androidx version for proguard rules
-keepclassmembers class androidx.appcompat.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
-keepclassmembers class androidx.appcompat.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
pi...@googlemail.com <pi...@googlemail.com> #8
Yep, Jetifier will automatically convert ProGuard rules packaged with libraries, but if you're adding the ProGuard files to your own project, you'll need to make sure to use the AndroidX equivalents if your project is using AndroidX.
[Deleted User] <[Deleted User]> #9
This issue seems to be back again? ... I'm using v2.2.0-rc02 and have run into the issue. Using the proguard rule below (mentioned in #7 above) to work around the issue seems to fix it.
-keepclassmembers class androidx.appcompat.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
Looking at the commit linked above that fixed the issue originally, it adds a proguard rule to fix the issue for the old support library, but not a rule for the AndroidX equivalent. #8 suggests that Jetifier will handle the AndroidX conversion, but that doesn't seem to be the case? I'm using AndroidX and Jetifier and without the specfic -keep rule above for androidx, my back arrow icon gets removed in release (minified) builds.
-keepclassmembers class androidx.appcompat.graphics.drawable.DrawerArrowDrawable {
void setProgress(float);
}
Looking at the commit linked above that fixed the issue originally, it adds a proguard rule to fix the issue for the old support library, but not a rule for the AndroidX equivalent. #8 suggests that Jetifier will handle the AndroidX conversion, but that doesn't seem to be the case? I'm using AndroidX and Jetifier and without the specfic -keep rule above for androidx, my back arrow icon gets removed in release (minified) builds.
sh...@gmail.com <sh...@gmail.com> #10
Re #9 - I filed
rb...@outlook.com <rb...@outlook.com> #11
Do you have jetifier enabled by adding android.enableJetifier=true
in your gradle.properties file? If so it should work fine. We opened a bug to change the rule over so that enabling jetifier is not required in a future release (
pi...@googlemail.com <pi...@googlemail.com> #12
Re #11, I do have jetifier enabled, and still see the regression mentioned in #9
Description
Solutions proposed:
1- Add a AKeyEvent_getCharacters function.
2- Give access to the jobject representing the java event from the AInputEvent structure.