Android:onRequestPermissionsResult lint警告

时间:2015-08-19 13:53:31

标签: java android permissions

我在我的应用中检查用户是否拥有某项权限,如果他们没有该权限,我就会请求:

E Service
到目前为止一切顺利。然后我为活动实现OnRequestPermissionsResultCallback并覆盖onRequestPermissionsResult,如下所示:

if (ActivityCompat.checkSelfPermission(someactivity, Manifest.permission_group.LOCATION) != PackageManager.PERMISSION_GRANTED) {

                ActivityCompat.requestPermissions(someactivity, PERMISSIONS_LOCATION, REQUEST_LOCATION);

            } else {
                useThePermission();
            }

这就是事情变得混乱的地方 - 因为通过添加第一个检查我丢失了关于用户可能没有正确权限的lint警告,但是,我在onRequestPermissionsResult()中得到了完全相同的useThePermission()警告。除了抑制该方法的lint检查之外,我能做些什么吗?

2 个答案:

答案 0 :(得分:1)

命名方法checkPermission()似乎解决了这个问题。不确定这是否会保持原样,但这似乎是目前唯一的方法,因为内部使用的注释是隐藏的。

答案 1 :(得分:0)

使用“onRequestPermissionsResult”函数并不意味着您需要使用OnRequestPermissionsResultCallback,因为活动已经为您处理了它。

它没有“OnRequestPermissionsResultCallback”文本。只需添加 活动的“onRequestPermissionsResult”,就是这样。它会被调用。

但是,我不知道何时调用“OnRequestPermissionsResultCallback”。