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

首頁 > 系統 > Android > 正文

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

2019-10-23 18:33:36
字體:
來源:轉載
供稿:網友

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一下還沒測試,如果測試出現問題,歡迎評論。

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

 

注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 隆林| 信宜市| 嘉峪关市| 始兴县| 通辽市| 合山市| 连州市| 双桥区| 丰城市| 赤壁市| 佛学| 黄冈市| 盈江县| 临朐县| 巴塘县| 吉木乃县| 安溪县| 美姑县| 荔波县| 称多县| 合水县| 山西省| 多伦县| 通河县| 淮北市| 葫芦岛市| 长岭县| 邛崃市| 临猗县| 林甸县| 遂宁市| 林芝县| 淮南市| 铅山县| 鄂托克前旗| 民县| 饶平县| 丰县| 斗六市| 永善县| 三穗县|