-2

私がオンラインで検索した回答(stackoverflow.comを含む)は、ギャラリーの選択を通じて画像ファイルIDを取得しているようです。

独自のファイル エクスプローラーを作成しました。それではどうすればよいのでしょうか?

独自の小さなサイズの画像を作成できます。しかし、既存のサムネイルを利用できればもっと速いと思います。存在しない場合は、後で使用するために保存されるサムネイルを作成したいと思います。

[更新:] わかりました、アドバイスありがとうございます。そのため、スペースを使いすぎないように、デバイスにサムネイルを作成しません。次に、次の 2 つの手順を実行することをお勧めします。 ステップ 1: 画像ファイルの既存のサムネイルが存在する場合は探します。ステップ 2: サムネイルが存在しない場合は、独自の小さいサイズのビットマップを作成します (保存しないでください)。

次に、ギャラリー インテントを使用しない場合、ステップ 1 を実行する方法を教えてください。

[更新 2:] 動画ファイルのサムネイルも取得したい。MediaMetadataRetriever を使用して、任意の時点でフレームを取得し、画像をサムネイルに再スケーリングできます。しかし、非常に遅いことがわかりました。フォルダーに 4 つのビデオ ファイルがあり、遅延を感じることができます。

したがって、既存のサムネイルを取得するより良い方法だと思います。ファイル パスとファイル名しかわからない場合、どうすれば取得できますか? この質問は元の質問と同じだと思いますが、そうするほうが理にかなっています。

4

3 に答える 3

0

ThumbnailUtils を使用できます。このユーティリティメソッドを調べてください。おそらく、それほど手間をかけずにニーズに適合します。縮小された画像を複製することは、不要なデータになるため、悪い設計です。

Bitmap resizedImage = ThumbnailUtils.extractThumbnail(rescaledImage, imagePixel, imagePixel);
于 2013-09-27T17:36:51.977 に答える