2016-09-27 4 views
2
int API_VERSION = 21; 

@TargetApi (API_VERSION) используется в Android, чтобы указать, что метод/класс поддерживается для API_VERSION и ниже.Есть аннотации @minApi, аналогичные аннотации @TargetApi в Android?

Можно ли отобразить нечто подобное, которое указывает, что метод или класс поддерживается только для API_VERSION и выше?

Примечание: - Я не нашел такой аннотации, но хотел бы спросить сообщество, если они столкнулись с чем-то вроде этого или внедрили свою собственную аннотацию?

+0

Что вы ожидаете от эффекта этой аннотации? Точка за аннотациями состоит в том, чтобы иметь время компиляции или время выполнения. – CommonsWare

+0

@CommonsWare Я хочу, чтобы конкретный класс/метод вызывался только на более высоких уровнях API. Этот класс/метод использует более высокие уровни API, например, 21 и выше. Например, используя конструкцию материала для 21+, но не называя это на более низких уровнях. nhaarman имеет хороший ответ. –

ответ

2

Существует @RequiresApi:

Обозначает, что аннотированный элемент должен быть вызван только на данном уровне API или выше.

Это похоже на более старую аннотацию @TargetApi, но более четко выражает, что это требование для вызывающего, а не используется для «подавления» предупреждений в методе, превышающем minSdkVersion.

+0

Awesome. Только то, что мне было нужно. –

 Смежные вопросы

  • Нет связанных вопросов^_^