如何知道ImageView圖像的文件名? 我想將它作爲電子郵件附件發送。從ImageView發送圖像作爲電子郵件附件
更新:我不使用資源中的圖像。我有Android存儲的圖像(如在聯繫人應用程序中)使用:
new Intent(Intent.ACTION_GET_CONTENT,null);
和來自相機。相機是好的 - 我可以得到文件路徑。但存儲是問題
如何知道ImageView圖像的文件名? 我想將它作爲電子郵件附件發送。從ImageView發送圖像作爲電子郵件附件
更新:我不使用資源中的圖像。我有Android存儲的圖像(如在聯繫人應用程序中)使用:
new Intent(Intent.ACTION_GET_CONTENT,null);
和來自相機。相機是好的 - 我可以得到文件路徑。但存儲是問題
簡短的答案是,你不能,因爲圖像可以來自各種來源。你可以做的是得到bitmap cache與發送圖像相同的結果。
如果圖像是您提供的資源,那麼您可以獲取圖像的路徑。格式爲:
「android.resource:// [包裝]/[RES ID]」
[包裝]是你的包名
[RES ID]是資源的ID值,例如使用
Intent sendIntent = new Intent(Intent.ACTION_SEND);
//Mime type of the attachment (or) u can use sendIntent.setType("*/*")
sendIntent.setType("image/jpeg");
//Subject for the message or Email
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "My Picture");
//Full Path to the attachment
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://your.package.name/" + R.drawable.example));
//Use a chooser to decide whether email or mms
startActivity(Intent.createChooser(sendIntent, "Email:"));
謝謝,但我不使用資源中的圖像。我有使用:Intent(Intent.ACTION_GET_CONTENT,null)和來自相機的android存儲器中的圖像(如在聯繫人應用程序中)。相機是好的 - 我可以得到文件路徑。但存儲是問題 –
嘗試看看內容提供商,http://developer.android.com/guide/topics/providers/content-providers.html我認爲這就是你需要的,我做了類似的事情,如果我能找到它,我會尋找它併發布代碼。 – Kenny
Kenny,使用此方法時,附件文件名是一個數字而不是文件名。有沒有辦法在發送前重命名附件,而不必保存到SD卡? –
我有圖片來自Android的存儲設備(如聯繫人應用程序):R.drawable.example
您可以在創建電子郵件的意圖,然後通過這個作爲一個額外的這樣的意圖(意圖.ACTION_GET_CONTENT,null)和來自相機。相機是好的 - 我可以得到文件路徑。但存儲是問題 –
如果您正在通過SD卡或內部存儲獲取它們,則可能需要掃描介質中的圖像文件。 –