Are you sure you need a specific feature of Android 11 / API_LEVEL_30?
Would it be totally impossible technically to target API_LEVEL_28 (Android 9)?
Many people in your users "niche" deliberately use an older device (such as Android 9) to limit the phone addiction: newer device => richer experience => even more addiction => for this reason some people in your niche use an older phone.
Well, you are right about the audience, many people might prefer to downgrade to older versions. However, support of older versions will significantly complicate the development.
The app uses several APIs that are not available on older versions. In one moment in time when I had the support of lower versions the app consisted of many wrappers for OS API versions. It was a challenge to support and add new features to such a codebase.
I just checked all APIs/Libs that the app uses had declared support of API_LEVEL_28, but have recommended a higher target (above 30). My bad. I assumed this modern Material 3 Compose had hard API-level requirements.
Would it be totally impossible technically to target API_LEVEL_28 (Android 9)?
Many people in your users "niche" deliberately use an older device (such as Android 9) to limit the phone addiction: newer device => richer experience => even more addiction => for this reason some people in your niche use an older phone.