Android Предупреждение уровня API студии не отображается в некоторых недавно добавленных методах - PullRequest
1 голос
/ 12 марта 2020

Примечание: есть вопрос с похожим названием, но это не дубликат. Если вам интересно, что это за вопрос: ссылка на вопрос Эта опция уже включена в моей IDE.

Недавно мы обновили приложение с некоторыми исправлениями ошибок, но одно из изменений вызвало критическую ошибку. sh, в зависимости от метода, который был добавлен в API 29, и Android Studio не предупредила меня об этом, что привело к неизбежному cra * sh в базе пользователей.

Если вам интересно У меня также есть документация API 29, загруженная в IDE, поэтому я могу видеть исходные коды, javadocs в ней.

Я использовал метод Parcel.writeBoolean (val) . Согласно документации, это было добавлено на уровне API 29 (я не знаю, почему оно было добавлено так поздно, но так было), однако, вот как это выглядит, когда я использую его в IDE. (Минимальная версия API - 21)

Screenshot of the issue (no warnings)

Нет предупреждений об использовании API. Следовательно, я случайно использовал его, и это привело к огромной скорости sh в нашем приложении.

Есть ли способ проверить каждый метод на основе его уровня API? В обычных случаях (например, при использовании Context.getSystemService(Class clazz) среда IDE выдает предупреждение о том, что она добавлена ​​на уровне API 23), она, кажется, работает, но при действительно новых добавленных методах иногда пропускает предупреждение.

Делать Мне нужно проверить каждый Android каркасный метод перед его использованием? Или есть что-то, что делает эту задачу правильно? Любая помощь приветствуется, спасибо.

1 Ответ

0 голосов
/ 12 марта 2020

Ну, по-видимому, у меня была старая версия Android Studio (3.5.1), обновление до 3.6.1 решило проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...