无法使用 Glide 将文件路径中的图像加载到 ImageView

Can not load image from file path to ImageView with Glide

我正在尝试从图库中获取图像并将路径存储到数据库以供进一步使用。 文件路径保存在数据库中,但我无法在 ImageView 上获取视图。

File path is: /storage/emulated/0/DCIM/Camera/image.jpg

这里我获取的图片路径为imgS

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK && requestCode == PICK_IMAGE) {
        imageUri = data.getData();
        img.setImageURI(imageUri);
        imgS = getPath(getApplicationContext(), imageUri);
    }
}

public static String getPath(Context context, Uri uri) {
    String result = null;
    Cursor cursor = context.getContentResolver().query(uri, null, null, null, null);
    if (cursor != null) {
        if (cursor.moveToFirst()) {
            int column_index = cursor.getColumnIndex("_data");
            result = cursor.getString(column_index);
        }
        cursor.close();
    }
    if (result == null) {
        result = "Not found";
    }
    return result;
}

我在这里尝试检索路径并在图像视图中显示图像。

 File f = new File(item.getImg());
    Glide.with(c).load(f).into(holder.img);
    holder.img.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //Toast.makeText(c, f.getAbsolutePath(), Toast.LENGTH_SHORT).show();
            if (f.exists()) {
                Toast.makeText(c, f.getAbsolutePath(), Toast.LENGTH_SHORT).show();
            }
        }
    });

注意:文件存在路径

只需要在 Manifest.xml 中的 Application 标签中添加 android:requestLegacyExternalStorage="true" 即可。