Skip to content
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

[BUG]: Play Console warns about unspecified mutability in PendingIntents #5442

Open
BenHenning opened this issue Jun 24, 2024 · 2 comments
Open
Assignees
Labels
bug End user-perceivable behaviors which are not desirable. Impact: High High perceived user impact (breaks a critical feature or blocks a release). Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet.

Comments

@BenHenning
Copy link
Member

Describe the bug

When pushing the latest release to Play Console, it provided warnings about:

Apps targeting Android 12 or later must specify the mutability of PendingIntents with either FLAG_IMMUTABLE or FLAG_MUTABLE. Having unspecified mutability may cause your app to crash.

And it links to https://developer.android.com/about/versions/12/behavior-changes-12#pending-intent-mutability. We don't use PendingIntents directly, so this is related to dependencies. The ones detected by Play Console are (obfuscated for the latest release):

  • androidx.work.impl.background.systemalarm.a.a
  • bs.dL.u
  • bn.dL.u
  • com.google.android.gms.measurement.internal.et.u

Unfortunately, none of these seem to be part of our codebase (at least from what I could see in our proguard.map file, so they're probably coming from GMS if I was to guess (I can't be positive).

Steps To Reproduce

N/A, though I think there might be a way to check for this using Android lint (needs more research) from looking briefly at https://stackoverflow.com/q/67045607/3689782.

Expected Behavior

We should avoid this warning by ensuring our app is Android 31 compliant.

Screenshots/Videos

No response

What device/emulator are you using?

N/A

Which Android version is your device/emulator running?

All

Which version of the Oppia Android app are you using?

0.13-beta-dcde7b359e

Additional Context

Note that Play Console warns about potential crashes, but I'm fairly certain the app never hits these scenarios. However, more testing will be needed on a newer version of Android just to be sure.

This probably ultimately requires isolating and then updating the corresponding dependencies. Updating dependencies is a difficult problem for us without more significant e2e testing, and it almost certainly will cause compatibility issues with Gradle.

@BenHenning BenHenning added bug End user-perceivable behaviors which are not desirable. triage needed Impact: High High perceived user impact (breaks a critical feature or blocks a release). labels Jun 24, 2024
@adhiamboperes
Copy link
Collaborator

adhiamboperes commented Jun 26, 2024

Linking this comment from @seanlip: #4751 (comment), the app is definitely crashing.

From looking around the web, this is happening on s+ devices because of our workmanager version. See note: https://developer.android.com/jetpack/androidx/releases/work#version_27_2.

@adhiamboperes adhiamboperes added Work: Low Solution is clear and broken into good-first-issue-sized chunks. and removed triage needed labels Jun 26, 2024
@adhiamboperes adhiamboperes added Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet. and removed Work: Low Solution is clear and broken into good-first-issue-sized chunks. labels Jun 28, 2024
@adhiamboperes
Copy link
Collaborator

Reported crashes logged at:

#5452

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug End user-perceivable behaviors which are not desirable. Impact: High High perceived user impact (breaks a critical feature or blocks a release). Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet.
Development

No branches or pull requests

2 participants