2014-01-08 24 views
2

我允許用戶瀏覽原生圖庫>選擇圖像,並試圖連接所選圖像的電子郵件,但沒有得到確切的形象,看到我的代碼:從原生圖庫中選擇圖片並附加到電子郵件

private static int RESULT_LOAD_IMAGE = 1; 
String picturePath;  

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) { 
     Uri selectedImage = data.getData(); 
     String[] filePathColumn = { MediaStore.Images.Media.DATA }; 

     Cursor cursor = getContentResolver().query(selectedImage, 
       filePathColumn, null, null, null); 
     cursor.moveToFirst(); 

     int columnIndex = cursor.getColumnIndex(filePathColumn[0]); 
     picturePath = cursor.getString(columnIndex); 
     cursor.close(); 

     // getting exact image which i selected with full path 
     Toast.makeText(getApplicationContext(), picturePath.toString(), Toast.LENGTH_LONG).show(); 

     sendImage(); 

    } 
} 

// to attach an image to email 
public void sendImage() { 
    // TODO Auto-generated method stub 
    Intent i = new Intent(Intent.ACTION_SEND); 
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    i.setType("message/rfc822"); 
    i.putExtra(Intent.EXTRA_STREAM, Uri.parse(picturePath)); 
    i.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); 
    i.putExtra(Intent.EXTRA_SUBJECT, "subject of email"); 
    i.putExtra(Intent.EXTRA_TEXT, "body of email"); 
    startActivity(Intent.createChooser(i,"Send email via:"));  
} 
} 

我錯過了什麼?我在哪裏犯錯誤?

+0

打印'picturePath'值,並檢查它持有? – Kitkat

+0

@Kitkat我嘗試使用此:Toast.makeText(getApplicationContext(),picturePath.toString(),Toast.LENGTH_LONG).show();而我選擇 – Sun

+0

得到確切形象的名字,你只得到了形象的名字或圖像名稱與完整路徑? – Kitkat

回答

2

嘗試此附加圖像。

File file = getFileStreamPath(EMAIL_TEMP_FILE); 
i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
i.setType("image/jpeg"); 
i.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+file.getAbsolutePath())); //Your image file 

希望它有幫助。

+0

耶 「文件://」 + picturePath工作對我來說 – Sun

+0

好:) @AbrahimNeil編碼愉快。 –

+0

需要一些幫助,我可以通過聊天加入你嗎? – Sun

相關問題