国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現保存圖片到本地并在相冊中顯示

2019-12-12 03:16:38
字體:
來源:轉載
供稿:網友

Android中拍照保存圖片到本地是常見的一種需求,之前碰到了一個問題,就是在4.4中,刷新相冊會出現ANR,經過一番百度解決了這個問題。

首先是保存圖片到本地

private static final String SAVE_PIC_PATH = Environment.getExternalStorageState().equalsIgnoreCase(Environment.MEDIA_MOUNTED) ? Environment.getExternalStorageDirectory().getAbsolutePath() :      "/mnt/sdcard";//保存到SD卡  private static final String SAVE_REAL_PATH = SAVE_PIC_PATH + "/good/savePic";   //保存的確切位置,根據自己的具體需要來修改public void saveFile(Bitmap bm, String fileName, String path) throws IOException {    String subForder = SAVE_REAL_PATH + path;    File foder = new File(subForder);    if (!foder.exists()) {      foder.mkdirs();    }    File myCaptureFile = new File(subForder, fileName);    if (!myCaptureFile.exists()) {      myCaptureFile.createNewFile();    }    BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(myCaptureFile));    bm.compress(Bitmap.CompressFormat.JPEG, 80, bos);    bos.flush();    bos.close();    Toast.makeText(this, "保存成功", Toast.LENGTH_SHORT).show();

以上就是保存圖片的方法,保存完畢之后就是要通知相冊刷新了,
在4.4中:

MediaScannerConnection.scanFile(this, new String[]{SAVE_REAL_PATH+ "/" + fileName}, null, new MediaScannerConnection.OnScanCompletedListener() {      @Override      public void onScanCompleted(String path, Uri uri) {        Log.e( "onScanCompleted: ", path);        Log.e( "onScanCompleted: ", uri.toString());      }    });

在4.4以上的是發送廣播來實現:

Intent intent = new Intent(Intent.ACTION_MEDIA_MOUNTED); //這是刷新SD卡//    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);  // 這是刷新單個文件    Uri uri = Uri.fromFile(new File(SAVE_REAL_PATH));    intent.setData(uri);    sendBroadcast(intent);

以上兩種方式有所區別,刷新SD卡的uri和刷新單個文件的uri的path不同,刷新SD卡的path就是外部存儲的根目錄,刷新單個文件的path就是你保存圖片的具體路徑,這是暫時我所遇到的坑,4.4一下還沒測試,如果測試出現問題,歡迎評論。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丰镇市| 岑巩县| 武川县| 普安县| 泰安市| 吴旗县| 丹棱县| 东乌珠穆沁旗| 峨山| 上栗县| 清流县| 荆门市| 洛宁县| 龙门县| 扎鲁特旗| 潮安县| 万州区| 江北区| 文登市| 西乌珠穆沁旗| 阳东县| 奎屯市| 江门市| 遵化市| 五家渠市| 江油市| 太保市| 浦江县| 马公市| 宜兰县| 政和县| 浙江省| 宜君县| 怀柔区| 澎湖县| 板桥市| 阜宁县| 阳江市| 剑河县| 米易县| 灌阳县|