这意味着您的应用程序没有被授予在外部存储器中写入数据的权限,因此无法保存手势库。您需要在应用程序的清单文件中声明此权限,并在运行时请求用户授权。以下是如何在应用程序中请求 WRITE_EXTERNAL_STORAGE 权限的示例:

  1. 在清单文件中添加以下权限声明:
  1. 在您的活动或片段中,请求 WRITE_EXTERNAL_STORAGE 权限:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
        != PackageManager.PERMISSION_GRANTED) {
    // Permission is not granted, request for permission
    ActivityCompat.requestPermissions(this,
            new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
            MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE);
} else {
    // Permission has already been granted
    saveGestureLibrary();
}
  1. 处理权限请求的结果:
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
        @NonNull int[] grantResults) {
    if (requestCode == MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE) {
        if (grantResults.length > 0
                && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
            // Permission has been granted
            saveGestureLibrary();
        } else {
            // Permission has been denied
            Toast.makeText(this, 'Permission denied', Toast.LENGTH_SHORT).show();
        }
    }
}

请注意,您应该在用户需要访问外部存储器的时候才请求 WRITE_EXTERNAL_STORAGE 权限。如果您没有明确的原因请求此权限,您的应用程序可能被用户视为不安全或侵犯隐私。

Android 申请 WRITE_EXTERNAL_STORAGE 权限失败:无法保存手势库

原文地址: https://www.cveoy.top/t/topic/od40 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录