Android Studio抱怨缺少指纹传感器的权限检查

时间:2017-07-24 11:24:31

标签: android android-studio android-fingerprint-api

我有以下代码行:

    FingerprintManager fm = activity.getSystemService(FingerprintManager.class);
    fm.isHardwareDetected();

在此点,Android Studio抱怨缺少permssionCheck(checkSelfPermission)。

  

调用需要用户可能拒绝的权限:代码应明确检查权限是否可用(使用checkPermission)或明确处理潜在的SecurityException

但是,据我了解Documentation,USE_FINGERPRINT(FingerprintManager要求)不是“危险”权限,因此在安装时被授予。如果我压制AndroidStudio警告,我的测试设备上的一切正常。 这是一个虚假的警告吗?

3 个答案:

答案 0 :(得分:1)

您是否已将权限添加到Manifest文件中?您不需要在运行时请求权限,但您仍需要拥有清单条目。

答案 1 :(得分:0)

这显然是一个AndroidStudio错误。我添加了

//noinspection MissingPermission

压制这个警告,并没有消极的后果。

答案 2 :(得分:-1)

不评论" noinspection MissingPermission"系统地,因为它 在已经在另一个函数中管理权限时很有用 并且需要避免警告信息。

例如:

if(PermissionsUtil.shouldAskPermission(context, Manifest.permission.CALL_PHONE)){
    //TODO: manage rights
    //PermissionsUtil...
}else{
    Intent intentCall = new Intent(Intent.ACTION_CALL);
    intentCall.setData(Uri.parse("tel:" + "9876543210"));
    //noinspection MissingPermission
    context.startActivity(intentCall);
}