So I uploaded my game on the Google Play store for internal testing, but half of my friends have phones from not too long ago that cannot update to Android 13 (API level 33). I saw that Google Play has this minimum API requirement. But there has to be someway to bypass that, right? I mean there are so many apps on the Google Play store that can be downloaded on older Android versions. (Or else my friends would just chuck their phones in the trash.)
You’re mixing Minimum API Level with Target API Level, you can set Minimum API Level below 33 to whatever number your Unity version allows it, but the Target API Level will need to be 33 or higher (since that’s what Google will require you to do).
I have my Minimum API Level set to 22. My <33 friends still can’t download the game after inviting their Google Play account to internal testing. They get the following message:
So it can be installed via direct APK installation on an older device (just tried it on friend’s phone) but not from the Google Play store after being invited for internal testing.
Just set Minimum Level API to lowest possible and Target API level to 33+, that way you’ll target all devices ranging from minimum level to whatever is highest at that day (Target API level doesn’t mean max supported API level). You don’t need to produce multiple builds.
In Android world, there’s also maxSdkVersion - <uses-sdk> | Android Developers, but Unity doesn’t expose this value, even Google doesn’t recommend to use it.