Recently Google announced it will start setting a minimum API level that new and updated apps will be required to use.
The move won’t harm support for devices running old versions of Android
Did they set minimum required value to target API level? Or minimum required value to minimum API level?
How does it work? When Android runs app with lower target level, it turns on compatibility features? For example, if level < 23, it uses old permissions model?
And if I upgrade to newer target levels, can I still maintain compatibility with older API levels and leave minimum level intact?
In order to provide users with the best Android experience possible, the Google Play Console will require that apps target a recent API level:
August 2018: New apps required to target API level 26 (Android 8.0) or higher.
November 2018: Updates to existing apps required to target API level 26 or higher.
2019 onwards: Each year the targetSdkVersion requirement will advance. Within one year following each Android dessert release, new apps and app updates will need to target the corresponding API level or higher.
Existing apps that are not receiving updates are unaffected. Developers remain free to use a minSdkVersion of their choice, so there is no change to your ability to build apps for older Android versions. We encourage developers to provide backwards compatibility as far as reasonably possible.
Did they set minimum required value to target API level? Or minimum required value to minimum API level?
How does it work? When Android runs app with lower target level, it turns on compatibility features? For example, if level < 23, it uses old permissions model?
And if I upgrade to newer target levels, can I still maintain compatibility with older API levels and leave minimum level intact?
The restrictions is on the Target API level, not the minimum API level.
From the original Android Developers Blog Post