Fixed
Status Update
Comments
js...@google.com <js...@google.com> #2
It would be really appreciated if you can build your project with R8 1.5.14-dev and https://issuetracker.google.com/issues/131210377#comment12 , and share those apks and mapping files with us. If you don't want to post them publicly, you can send them to jsjeon@google.com
se...@gmail.com <se...@gmail.com> #3
I've reproduced the issue using a sample project.
It turns out that the issue is not reproduced on 1.5.22 (96c99992d20194ccee2ebcee6a6c53787f37b34f) when -allowaccessmodification is present in proguard rules.
On 1.5.14 issue is not reproduced with and without this option.
This option comes from android-proguard-optimize.txt and not present in android-proguard.txt.
I've attached the sample project, apks, and corresponding mappings.
It turns out that the issue is not reproduced on 1.5.22 (96c99992d20194ccee2ebcee6a6c53787f37b34f) when -allowaccessmodification is present in proguard rules.
On 1.5.14 issue is not reproduced with and without this option.
This option comes from android-proguard-optimize.txt and not present in android-proguard.txt.
I've attached the sample project, apks, and corresponding mappings.
js...@google.com <js...@google.com> #4
Thank you for the simple repro. It turns out that this is another regression I added at https://r8-review.googlesource.com/c/r8/+/36820 . Now we handle `null` inner-name in computing inner-name separator ( issue 131210377 ), a bad decision I made can be partially reverted, which should resolve the issue.
js...@google.com <js...@google.com> #5
The fix (https://r8-review.googlesource.com/c/r8/+/37980 ) has been reviewed, but I'm waiting for internal branching. I'll make it to 1.5 (i.e., AS 3.5 beta2). Meanwhile, you can try:
buildscript {
repositories {
maven {
url "http://storage.googleapis.com/r8-releases/raw/master "
}
}
dependencies {
classpath 'com.android.tools:r8:032e43a242116c45053476a25087d5e2109b9ad0' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:X.Y.Z' // Your current AGP version.
}
}
buildscript {
repositories {
maven {
url "
}
}
dependencies {
classpath 'com.android.tools:r8:032e43a242116c45053476a25087d5e2109b9ad0' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:X.Y.Z' // Your current AGP version.
}
}
se...@gmail.com <se...@gmail.com> #6
I can confirm that the issue is fixed in this version. Thank you!
js...@google.com <js...@google.com> #7
Great, thank you for the trial and confirmation!
js...@google.com <js...@google.com> #8
Hm, git is not posting the submit messages for changes a couple time. The fix is cherry-picked to 1.5, so you can use it as follows:
buildscript {
repositories {
maven {
url 'http://storage.googleapis.com/r8-releases/raw '
}
}
dependencies {
classpath 'com.android.tools:r8:1.5.24' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:X.Y.Z' // Your current AGP version.
}
}
buildscript {
repositories {
maven {
url '
}
}
dependencies {
classpath 'com.android.tools:r8:1.5.24' // Must be before the Gradle Plugin for Android.
classpath 'com.android.tools.build:gradle:X.Y.Z' // Your current AGP version.
}
}
Description
java.lang.IllegalAccessError: Illegal class access: 'b.n.a.a' attempting to access 'androidx.localbroadcastmanager.content.LocalBroadcastManager$1' (declaration of 'b.n.a.a' appears in base.apk)
at b.n.a.a.<init>(LocalBroadcastManager.java:6)
at b.n.a.a.a(LocalBroadcastManager.java:3)
at com.facebook.internal.b.b(BoltsMeasurementEventListener.java:2)
at com.facebook.internal.b.a(BoltsMeasurementEventListener.java:6)
at com.facebook.f.a(FacebookSdk.java:17)
at com.facebook.marketing.internal.MarketingInitProvider.onCreate(MarketingInitProvider.java:2)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1917)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1892)
at android.app.ActivityThread.installProvider(ActivityThread.java:6391)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5938)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5853)
at android.app.ActivityThread.access$1100(ActivityThread.java:199)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1650)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
com.facebook.internal.b.b (BoltsMeasurementEventListener.java) is jetified to use androidx.localbroadcastmanager.content.LocalBroadcastManager instead of android.support.v4.content.LocalBroadcastManager.
Crash is not reproduced when app is built using R8 1.5.14-dev (build 7111a35bae6d5185dcfb338d61074aca8426c006).