0

在android中,谁创建缩略图?

我有一个应用程序,我正在访问缩略图数据库。我观察到在 sdcard 中加载新图像后,我的应用程序中丢失了一些图像。

那么是媒体扫描仪创建和更新缩略图数据库吗?有办法强制吗?

4

1 回答 1

0

我认为您需要重新扫描媒体。拍照后尝试调用ContentResolver的 insert() 函数,传递有关图片的信息。

public final Uri insert (Uri url, ContentValues values)

它实际上会将图片添加到数据库中并为您创建图片的缩略图。它也将被添加到缩略图数据库中。希望这可以帮助!

或者

试试这个代码:

public static void scanFile(Context context, String path, String mimeType ) {
    Client client = new Client(path, mimeType);
    MediaScannerConnection connection = new MediaScannerConnection(context, client);
    client.connection = connection;
    connection.connect();
}

private static final class Client implements MediaScannerConnectionClient {
    private final String path;
    private final String mimeType;
    MediaScannerConnection connection;

    public Client(String path, String mimeType) {
        this.path = path;
        this.mimeType = mimeType;
    }

    @Override
    public void onMediaScannerConnected() {
        connection.scanFile(path, mimeType);
    }

    @Override
    public void onScanCompleted(String path, Uri uri) {
        connection.disconnect();

}

}

然后只需调用scanFile(imageUri.getPath(), null).

不要使用编码路径,也不要使用“ / ”作为 MIME 类型,因为 null 值会使扫描仪自动确定 MIME 类型。

于 2012-04-20T06:29:04.057 回答