怎么在Android中将图片保存到相册

  介绍

这篇文章将为大家详细讲解有关怎么在Android中将图片保存到相册,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

调用<代码> savephoto的SaveBitmapFromView(查看视图),方法自动保存图片

//点击图片保存   imageView.setOnClickListener (new  View.OnClickListener (), {   @Override才能   public 才能;void  onClick (View  v), {   ,,,String [], PERMISSIONS =, {   ,,,,,,,“android.permission.READ_EXTERNAL_STORAGE",   ,,,,,,,“android.permission.WRITE_EXTERNAL_STORAGE",};   ,,,//检测是否有写的权限   ,,,int  permission =, ContextCompat.checkSelfPermission (MainActivity.this,   ,,,,,,,“android.permission.WRITE_EXTERNAL_STORAGE");   ,,,if  (permission  !=, PackageManager.PERMISSION_GRANTED), {   ,,,,,//,没有写的权限,去申请写的权限,会弹出对话框   ,,,,,ActivityCompat.requestPermissions (MainActivity.this,权限,1);   ,,,}   ,,,try  {   ,,,,,//创建savephoto类保存图片   ,,,,,SavePhoto  SavePhoto =, new  SavePhoto (MainActivity.this);   ,,,,,savePhoto.SaveBitmapFromView (imageView);   ,,,},catch  (ParseException  e), {   ,,,,,e.printStackTrace ();   ,,,}   ,,}   });

SavePhoto类具体实现

参考自:https://www.jb51.net/article/158635.htm

但原博主部分代码有误我稍加了修改

public  class  SavePhoto {//存才能调用该类的活动   Context 才能;语境;   public 才能SavePhoto (Context 上下文),{   ,,,this.context =,上下文;   ,,}//才能保存文件的方法:   public 才能;void  SaveBitmapFromView (View 视图),throws  ParseException  {   ,,,int  w =, view.getWidth ();   ,,,int  h =, view.getHeight ();   ,,,Bitmap  bmp =, Bitmap.createBitmap (w, h, Bitmap.Config.ARGB_8888);   ,,,Canvas  c =, new 画布(bmp);   ,,,view.layout (0, 0, w, h);   ,,,view.draw (c);   ,,,//,缩小图片   ,,,Matrix  Matrix =, new 矩阵();   ,,,matrix.postScale (0.5 0.5 f, f);,//长和宽放大缩小的比例   ,,,bmp =, Bitmap.createBitmap (bmp, 0, 0, bmp.getWidth (), bmp.getHeight(),矩阵,true);   ,,,DateFormat  format =, new  SimpleDateFormat (“yyyyMMddHHmmss");   ,,,saveBitmap (bmp, bmp.toString (), +,“.JPEG");   ,,}   ,/*   ,,*,保存文件,文件名为当前日期   ,,*/public 才能;void  saveBitmap (Bitmap ,位图,String  bitName) {   ,,,String  fileName ;   ,,,File  File ;   ,,,如果(Build.BRAND  .equals (“Xiaomi"),){//大敌;小米手机   ,,,,,fileName =, Environment.getExternalStorageDirectory () .getPath () +“/DCIM/相机/? bitName ;   还有,,,}{//大敌;Meizu ,朋友   ,,,,,Log.v (“qwe",“002“);   ,,,,,fileName =, Environment.getExternalStorageDirectory () .getPath () +“DCIM/? bitName ;   ,,,}   ,,,file =, new 文件(文件名);   ,,,如果(file.exists ()) {   ,,,,,file.delete ();   ,,,}   ,,,FileOutputStream ;   ,,,试着{   ,,,,,out =, new  FileOutputStream(文件);   ,,,,,//,格式为,JPEG,照相机拍出的图片为JPEG格式的,PNG格式的不能显示在相册中   ,,,,,如果(bitmap.compress (Bitmap.CompressFormat.JPEG,, 90,,))   ,,,,,{   ,,,,,,,out.flush ();   ,,,,,,,out.close ();   ,,,,,,,//,插入图库   ,,,,,,,MediaStore.Images.Media.insertImage (context.getContentResolver (),, file.getAbsolutePath (),, bitName,, null);   ,,,,,}   ,,,}   ,,,catch  (FileNotFoundException  e)   ,,,{   ,,,,,e.printStackTrace ();   ,,,}   null   null   null   null   null   null   null   null

怎么在Android中将图片保存到相册