targetsdk_or_later wording and translation issues
As discussed in #fdroid-translators, Requires: targets 10
is confusing and hard to translate.
I thought "targets Android %s+" is good enough for me.
I've used
built for %s
it's a bit confusing now I think. "Requires: x86, 12+" makes sense (though maybe should be "Android 12+"). but for the targetsdk it's the OS that requires the APK to have a min target SDK, not the APK requiring x86 or Android 12+.
"Built for an old Android version: %s" maybe? Although that still leaves it implicit. I think it will always be confusing because users don't generally expect old software to not run on new OS, only the other way around
that still doesn't work after "Requires: ". because that's currently a list of things the APK requires (though the code says it's a list of incompatibility reasons). I think we need to change that to make it work.
AFAICT al the existing incompatibility reasons were things the APK requires. but this isn't.
Maybe just rephrase "Requires" into "Incompatible" and prefix "Requires" onto every other compat error string
something like that, yeah. might get long.
ignoring length (and consistency of the incompatibilities) for a sec, "Incompatible: requires x86, requires Android 12+, targets Android 5" seems okay. though doesn't explain why the latter is a problem, not much we can do there sadly.
"built for" might be better than "targets"
also not sure a comma separated list translates well.
Then "Requires: x86, Android 12-"?
that's closer. but still wrong IMO. it's blocked by the OS, the APK itself doesn't actually require a newer version to run. and some ROMs might allow it (or you can use adb). will open a client issue later when not AFK.