0

Androidでは、誰がサムネイルを作成しますか?

サムネイルデータベースにアクセスしているアプリがあります。新しい画像を SD カードにロードした後、一部の画像がアプリで見落とされていることがわかりました。

では、サムネイル データベースを作成および更新するのはメディア スキャナでしょうか。強制する方法はありますか?

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 に答える