Android將圖片儲存到相簿並及時看到

lsc183發表於2015-03-05

  Android中將圖片儲存到SD卡中,相簿裡不會及時出現這張圖片,因為沒有及時更新其索引,一般需要開機幾次。當然我們可以手動更新其索引。

      1,首先將檔案儲存到SD卡中。

     String filePath = "xxx"; //全路徑

              saveImgToSDcard(filePath);

      2,增加Android 內部媒體索引。

    

public boolean saveImgToGallery(String filePath) {

    boolean sdCardExist = Environment.getExternalStorageState().equals(

    android.os.Environment.MEDIA_MOUNTED); // 判斷sd卡是否存在

    if (!sdCardExist)

      return false; 

      try {

        ContentValues values = new ContentValues();

        values.put("datetaken", new Date().toString());

        values.put("mime_type", "image/jpg");

        values.put("_data", filePath);

        Application app = DoctorApplication.getInstance();

        ContentResolver cr = app.getContentResolver();

        cr.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);

      } catch (Exception e) {

        e.printStackTrace();

      }

      return true;

    }

 

    3,重新整理filePath的上一級目錄

    

MediaScannerConnection.scanFile(MyLanJingCode.this,new String[] { Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getPath()+ "/"+ filePath.getParentFile().getAbsolutePath() }, null,null);

 

 

    這樣就能及時在相簿中看到增加的圖片了。

相關文章