0

Android Studio(2.2.3)对我所称的方法发出警告,并用@RequiresPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)注释。Android @RequirePermission在onRequestPermissionsResult中突出显示红色方法

我会确定这样的警告,但对我来说,这是无感:我打电话内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注释我的方法......我该怎么办?

回答

4

添加此注释上面的方法来避免警告 @SuppressWarnings({"MissingPermission"})

+0

谢谢!我实际上正在考虑这样做,但我不知道要传递什么'@ SuppressWarnings',但我回到了这里,知道有人会给出这个解决方案,并且你有! :) – Mackovich