Android 네트워크 그림을bitmap으로 변환하여 로컬 지정 폴더에 저장

4999 단어
다음 코드는 네트워크 그림을bitmap으로 변환하고 지정한 폴더, 위챗, QQ에 저장합니다. 미리 보기 그림이 32kb보다 크지 않도록 요구합니다.
이미지 코드 압축, Glide를 사용한 이미지 압축
  Glide.get(ShopDetailsActivity.this).clearMemory();
                Log.e("          ", "      :" + shopInfoEntity.getImgs().get(0).toString());
                Glide.with(ShopDetailsActivity.this).load(shopInfoEntity.getImgs().get(0)).asBitmap().into(new SimpleTarget() {
                    @Override
                    public void onResourceReady(Bitmap resource, GlideAnimation super Bitmap> glideAnimation) {
//                        //            32k  ,         
                        bitmap = Tool.createBitmapThumbnail(resource, false);
                        wxBitMap = bitmap;
//                            saveBitmap(bitmap);
//                            String sss = saveMyBitmap("fenxiang", bitmap);
                        saveBitmap(bitmap);
                    }
                });

 
그림을 로컬로 저장
FileOutputStream out;
String bitmapName = "fenxiang.jpg";
File file;
String QQFilePath;
 public void saveBitmap(Bitmap bmp) {

        try { //   SDCard     
            String sdCardDir = Environment.getExternalStorageDirectory() + "/zupubao/";
            File dirFile = new File(sdCardDir);  //        
            if (!dirFile.exists()) {              //
                dirFile.mkdirs();
            }                          //
            File file = new File(sdCardDir, bitmapName);//  SDcard         ,         
            out = new FileOutputStream(file);
            bmp.compress(Bitmap.CompressFormat.JPEG, 100, out);
//            System.out.println("_________   ____sd______        ____________________");
            Log.e("saveBitMap", "saveBitmap:      " + Environment.getExternalStorageDirectory() + "/zupubao/" + bitmapName);
            QQFilePath = Environment.getExternalStorageDirectory() + "/zupubao/" + "fenxiang.jpg";
//            showShare(QQFilePath);
            showShare2();
            out.flush();
            out.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
//        Toast.makeText(HahItemActivity.this,"     "+Environment.getExternalStorageDirectory()+"/CoolImage/"+"      ", Toast.LENGTH_SHORT).show();
    }

이 블로그는 노트로 되어 있다
 
전재 대상:https://www.cnblogs.com/dingxiansen/p/8932675.html

좋은 웹페이지 즐겨찾기