【问题标题】:Android: Folder has many images but only single image is visible through gallery intentAndroid:文件夹有很多图像,但通过画廊意图只能看到单个图像
【发布时间】:2016-12-27 16:06:10
【问题描述】:

我正在使用这个简单的方法通过我的应用程序保存图像字节:

public static boolean StoreBytesToFile(byte[] messagebytes, String FilePathName)
{
    try
    {
        FileOutputStream fos = new FileOutputStream(FilePathName);
        fos.write(messagebytes);
        fos.flush();
        fos.close();
    }
    catch(java.io.FileNotFoundException fnfe)
    {
        return false;
    }
    catch(java.io.IOException ioe)
    {
        return false;
    }

    return true;
}

然后当用户想要查看存储的图像时,我使用图库意图打开它:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
Uri uri = Uri.parse("file://" + m_ImageFilename);
intent.setDataAndType(uri, "image/*");
startActivity(intent);

但是,尽管同一文件夹中存储了其他图像,但图库仅显示m_ImageFilename 指向的单个图像文件。

因此画廊意图的实际行为是这样的:

虽然预期的行为是这样的:

作为一个重要的说明,我必须提到重启手机后,画廊意图按预期显示文件夹中的所有图像。此外,从果冻豆到棉花糖的所有版本的行为都是相同的。 p>

所以每次保存图片后,用户必须重启手机才能通过图库意图查看文件夹中的所有图片。

请有人告诉我这里缺少什么以及如何解决这个问题?

【问题讨论】:

    标签: android image android-intent android-gallery


    【解决方案1】:

    您需要将保存的图像添加到图库...This 会帮助您。

    【讨论】:

    • 谢谢。我试过这个解决方案。创建文件,将其添加到图库并使用图库视图意图打开。但是,我发现它并不总是有效。就我而言,它在我第二次查看文件时起作用。此外,这也产生了其他问题(例如尽管我调用了getContentResolver().delete,但图片仍显示在图库中)。我发现在 SO 上有很多关于这些功能的讨论,但找不到完美的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 2019-09-13
    相关资源
    最近更新 更多