Я хотел бы создать две разные версии моего приложения, используя разные андроиды: minSdkVersion. В нижней версии sdk я бы просто опустил функцию, которая нуждается в более высоком sdk. (Отключите элемент пользовательского интерфейса, который нуждается в более высокой версии)
Я понимаю, что я могу "Опубликовать несколько APK с разными фильтрами" (для разных версий sdk) (http://developer.android.com/guide/google/play/filters.html#MultiApks). В моем коде и файле AndroidManifest.xml мне понадобится что-то вроде "#ifdef", но это, похоже, не работает в xml файлах.
Какой был бы лучший подход для минимизации (подверженных ошибкам) ручных изменений для каждой перестройки?
Или есть способ указать более низкую версию sdk в манифесте и тем не менее использовать методы более высокой версии, когда они доступны, т.е. динамически активировать вызов метода в зависимости от текущей версии Android.
Да, вы можете создать один APK с условными блоками, которые выполняют разные инструкции в зависимости от версии API устройства. Например, вы можете проверить значение android.os.Build.VERSION.SDK_INT
и предпринять соответствующие действия.