Android Studio (2.2.3
) предупреждает меня о методе, который я назвал, который записан с помощью @RequiresPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)
.Android @RequirePermission выделяет метод в красном на onRequestPermissionsРедактируется
Я бы ОК с таким предупреждением, но в моем случае, это нонсенс: я вызываю метод в onRequestPermissionsResult
, где я могу проверить, что WRITE_EXTERNAL_STORAGE
разрешение было действительно предоставлено:
if (permissions[0].equals(Manifest.permission.WRITE_EXTERNAL_STORAGE) && grantResults[0] == PackageManager.PERMISSION_GRANTED)
CSVUtils.setup(); // -> is highlighted in red!!
Так после предупреждения, я использую checkSelfPermission()
, но затем Android Studio сообщает мне, что это SDK 23, пока я настроен на SDK 21 как минимум, пока я нахожусь в методе, который можно было бы вызывать только в SDK 23 или новее. Это действительно побеждает цель, потому что у меня есть весь код, чтобы проверить разрешение, если пользователь работает с SDK 23 или новее, поэтому зачем мне нужно больше проверять?
В любом случае, это не проблема, просто мне не нравится, когда меня предупреждают таким образом, когда мне не нужно комментировать мои методы с помощью @RequirePermission
... что я могу сделать?
Спасибо! Я действительно думал об этом, но я не знал, что передать в '@ SuppressWarnings', но я вернулся сюда, зная, что кто-то дал бы это решение, и у вас есть! :) – Mackovich