根据网络路径存储图片并在图库显示
来源:互联网 发布:知否剧组照片 编辑:程序博客网 时间:2024/05/16 06:46
package com.example.administrator.mytest;import android.content.Context;import android.content.Intent;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.net.Uri;import android.os.Environment;import android.os.Handler;import android.os.Message;import android.provider.MediaStore;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.ImageView;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import java.text.SimpleDateFormat;import java.util.Date;public class MainActivity extends AppCompatActivity { Bitmap bitmap; ImageView imageView; Handler handler; Button button; public static void saveImageToGallery(Context context, Bitmap bmp) { // 首先保存图片 File appDir = new File(Environment.getExternalStorageDirectory(), "Boohee"); if (!appDir.exists()) { appDir.mkdir(); } String fileName = System.currentTimeMillis() + ".jpg"; File file = new File(appDir, fileName); try { FileOutputStream fos = new FileOutputStream(file); bmp.compress(Bitmap.CompressFormat.JPEG, 100, fos); fos.flush(); fos.close(); Log.e("存储完成", "====="); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } // 其次把文件插入到系统图库 try { MediaStore.Images.Media.insertImage(context.getContentResolver(), file.getAbsolutePath(), fileName, null); } catch (FileNotFoundException e) { e.printStackTrace(); } // 最后通知图库更新 Log.e("文件存储的路径", file.getAbsolutePath()); context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + file.getAbsolutePath()))); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button); imageView = (ImageView) findViewById(R.id.image); handler = new Handler() { @Override public void handleMessage(Message msg) { ; imageView.setImageBitmap(bitmap); Log.e("图片加载完成", "加载挖槽"); saveImageToGallery(MainActivity.this, bitmap); super.handleMessage(msg); } }; button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { new Thread() { @Override public void run() { try { /// bitmap= BitmapFactory.decodeStream(getImageStream("http://120.26.113.179:8089/UploadFiles/201704/05/1d15996e-4dba-4f84-9829-ac5c9771c4cc.png")); GetImageInputStream("http://120.26.113.179:8089/UploadFiles/201704/05/1d15996e-4dba-4f84-9829-ac5c9771c4cc.png"); handler.sendEmptyMessage(1); } catch (Exception e) { e.printStackTrace(); } } }.start(); } }); } /** * 获取网络图片 * * @param imageurl 图片网络地址 * @return Bitmap 返回位图 */ public Bitmap GetImageInputStream(String imageurl) { URL url; HttpURLConnection connection = null; bitmap = null; try { url = new URL(imageurl); connection = (HttpURLConnection) url.openConnection(); connection.setConnectTimeout(6000); //超时设置 connection.setDoInput(true); connection.setUseCaches(false); //设置不使用缓存 InputStream inputStream = connection.getInputStream(); bitmap = BitmapFactory.decodeStream(inputStream); inputStream.close(); } catch (Exception e) { e.printStackTrace(); } return bitmap; }}
0 0
- 根据网络路径存储图片并在图库显示
- android网络下载图片并且显示在图库中
- 新手--从网络加载图片并存储在本地,断开网络后依然可以显示图片
- 根据url路径获取图片并显示到ListView中
- 根据路径获得图片并压缩返回bitmap用于显示
- 根据路径获得图片并压缩,返回bitmap用于显示
- 根据图片的路径删除显示在view中的图片
- Android 获取图库图片 根据uri获取路径
- 在安卓中读取并显示网络图片
- 4.4从图库选择图片,获取图片路径并裁剪
- 4.4从图库选择图片,获取图片路径并裁剪
- Android 把bitmap转换成String,计算图片的缩放值,根据路径获得突破并压缩返回bitmap用于显示,获取保存 隐患检查的图片文件夹名称,获取保存图片的目录,根据路径删除图片,添加到图库
- 如何调用andorid本地图库并获取其图片路径
- android 根据SD卡中图片路径读取并显示SD中的图片——源代码
- android 根据SD卡中图片路径读取并显示SD中的图片——源代码
- Android如何从图库获取一张图片并显示
- android 调用图库并显示选择的图片
- 关于安卓保存网络图片并更新图库
- Java8---Lambda函数编程练习
- TCP/IP入门知识——应用层
- 通过 按键 学习 中断
- 并发编程--并发编程包Condition条件
- 对Java Serializable(序列化)的理解和总结
- 根据网络路径存储图片并在图库显示
- CMD 改host文件
- Linux下进度条的简单实现
- 解决win7安装 wamp 启动不了 apache 问题之一
- (一)PCL总览
- tarjan算法
- easyUI的引用方式
- C 函数指针
- 剑指Offer 42反转单词顺序 vs左旋转字符串