Androidは写真をダウンロードしてアルバムを更新します。
1759 ワード
画像をダウンロードして保存します。
写真をダウンロードするのは簡単です。Okhttpで直接GETしてストリームに変換すればいいです。
ダウンロードした写真は直接アルバムに表示されません。他のソフトウェアに提供する場合は選択できません。
アルバムの更新方法を手動で呼び出す必要があります。
この文章ははっきりと述べている。https://www.cnblogs.com/plokmju/p/android_メディアス.
最後にMedia Scanner Connectionを使ってアルバムを更新します。ファイルを指定して簡単に作成できます。
写真のダウンロードはアルバムを更新する必要があります。ファイルディレクトリでしか画像を発見できません。
写真をダウンロードするのは簡単です。Okhttpで直接GETしてストリームに変換すればいいです。
Request request = new Request.Builder().get().url("http://pic.qiantucdn.com/58pic/17/85/35/559de1de9b223_1024.jpg").build();
Response response = ApiClient.getOkHttpClientInstance().newCall(request).execute();
if (response != null && response.code() == 200) {
InputStream inputStream = response.body().byteStream();
// Bitmap
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
File appDir = new File(Environment.getExternalStorageDirectory(), " ");
if (!appDir.exists()) {
appDir.mkdir();
}
String fileName = " _" + System.currentTimeMillis() + ".jpg";
File file = new File(appDir, fileName);
//
FileOutputStream out = new FileOutputStream(file);
// bitmap jpg
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
//
out.flush();
out.close();
}
アルバムを更新ダウンロードした写真は直接アルバムに表示されません。他のソフトウェアに提供する場合は選択できません。
アルバムの更新方法を手動で呼び出す必要があります。
この文章ははっきりと述べている。https://www.cnblogs.com/plokmju/p/android_メディアス.
最後にMedia Scanner Connectionを使ってアルバムを更新します。ファイルを指定して簡単に作成できます。
//
MediaScannerConnection.scanFile(context, new String[]{file.getAbsolutePath()}
, new String[]{"image/jpeg"}, (path, uri) -> {
});
締め括りをつける写真のダウンロードはアルバムを更新する必要があります。ファイルディレクトリでしか画像を発見できません。