oppia / oppia-android

A free, online & offline learning platform to make quality education accessible for all.
https://www.oppia.org
Apache License 2.0
320 stars 520 forks source link

[Feature Request]: Provide instructions for updating the app's target API level and verifying compatibility. #5473

Closed seanlip closed 2 weeks ago

seanlip commented 3 months ago

Describe the bug

We are getting regular emails from the Play Store roughly once a year that say:

"[Action required] Your app is affected by Google Play's target API level requirements"

These emails tell us that the app is targeting an old version of Android, and that we need to "meet target API level requirements".

The aim of this issue is threefold:

Steps To Reproduce

N/A

Expected Behavior

We should hopefully stop getting these emails if the app API level requirements are always correctly up-to-date.

Screenshots/Videos

No response

What device/emulator are you using?

N/A

Which Android version is your device/emulator running?

N/A

Which version of the Oppia Android app are you using?

N/A

Additional Context

No response

thanushree267 commented 2 months ago

Hi @seanlip , I just have a simple suggestion regarding the issue, just check for current Google Play's API requirements. In 'build.gradle', update 'targetSdkVersion' to the latest required API level. Also, consider updating 'compileSdkVersion' to match or exceed the 'targetSdkVersion' . Finally update the app's dependencies using Gradle dependency tool.

adhiamboperes commented 2 months ago

Thanks for the suggestion @thanushree267! If you'd like to contribute to Oppia Android, please take a look at our starter issues here, as well as more advance issues here, that are currently not assigned. Do also check out the wiki on how to get started.

BenHenning commented 2 months ago

NB: #5137 is useful to see what the upgrade process can look like, though we'll want to be more prescriptive in exactly the investigation and documentation steps that we take so that a general process may be defined.

BenHenning commented 1 month ago

FYI I removed the second item under the original task list since #5535 is tracking it separately.

As for the regular cadence, I'm not actually sure of a good way to do this short of responding to the reminder from Google Play Console. I'm not sure that GitHub has a good mechanism for "recurring audit"-type reminders. Do you have any suggestions @seanlip?

Edit: I spent a few minutes combing the GitHub extensions/actions marketplace for a tool like this, and didn't find anything that would directly help. It seems like a reasonable thing to exist, though.

seanlip commented 1 month ago

@BenHenning (and @adhiamboperes) I think it suffices for the Android tech leads to have a regular annual event on their calendar that says "[REMINDER] Update the target API level requirements for the Android app" (and perhaps this is shared with the Android team as well).

This would presumably be scheduled for around the same time each year, about 3 or 6 months before the expected date of the Google reminder (depending on how long the update process typically takes). Do you think that would work?

adhiamboperes commented 3 weeks ago

@BenHenning (and @adhiamboperes) I think it suffices for the Android tech leads to have a regular annual event on their calendar that says "[REMINDER] Update the target API level requirements for the Android app" (and perhaps this is shared with the Android team as well).

This would presumably be scheduled for around the same time each year, about 3 or 6 months before the expected date of the Google reminder (depending on how long the update process typically takes). Do you think that would work?

@seanlip, 3 months(around May) should suffice.