【问题标题】:Deleted picture still visible in gallery已删除的图片在图库中仍然可见
【发布时间】:2014-11-05 03:01:20
【问题描述】:

这里有个小问题。

在我的应用程序中,我让用户从图库中选择一张图片。在做任何其他事情之前,我会保存它的路径。 当用户选择他想要的图片时,我希望将其复制到另一个文件夹中,然后从原始文件夹中删除。

嗯,它很有效。原始图片被删除,副本出现在另一个文件夹中。 布特。它还在那里。 删除的图片在图库中仍然可以看到,副本看不到。当我调用Gdx.files.absolute(originalPath).exists()时返回false,Gdx.files.external(copyPath).exists()返回true,我可以使用图片的副本没有问题。

图库好像没有更新。

我用它来删除和复制图片:

public void MoveToCustomFolder() {
    if (DoesOriginalPathExist()) {
        if (!DoesCopyExist()) {
            System.out.println("Copying");
            Gdx.files.external("/CustomFolder/" + fileName).write(Gdx.files.absolute(filePath).read(), true);
        }
        System.out.println("Deleting");
        Gdx.files.absolute(filePath).delete();
    }
}

filePath是图库中原始图片的绝对路径,fileName是文件名(“picture.jpg”)

我在研究过程中发现了一些东西。清除媒体存储应用程序的数据后,很快就会出现正确的图库,没有已删除的图片和它们所属的副本。

另外,我确实拥有 WRITE_EXTERNAL_STORAGE 权限。

你们知道怎么回事吗?

【问题讨论】:

    标签: android libgdx gallery


    【解决方案1】:

    找到了解决办法。

    我不得不用这个功能更新图库:

    public void UpdateGallery(String filePath) {
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(new File(filePath))));
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 2013-04-21
      相关资源
      最近更新 更多