在android中,谁创建了thumnails?
我有一个应用程序,我正在访问thumnail数据库。我观察到在SD卡中加载新图像后,我的应用程序中会遗漏一些图像。
创建和更新缩略图数据库的媒体扫描程序是什么? 有没有办法强迫它?
答案 0 :(得分: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类型,因为空值会使扫描程序自动确定MIME类型。