第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問試圖將SD卡上的文件附加到電子郵件中

請問試圖將SD卡上的文件附加到電子郵件中

翻翻過去那場雪 2019-08-02 07:02:52
試圖將SD卡上的文件附加到電子郵件中我正試圖發(fā)起一個發(fā)送電子郵件的意圖。所有這些都有效,但當我試圖真正發(fā)送電子郵件時,會發(fā)生一些“奇怪”的事情。這是代碼Intent sendIntent = new Intent(Intent.ACTION_SEND);sendIntent.setType("image/jpeg"); sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Photo"); sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("  sendIntent.putExtra(Intent.EXTRA_TEXT, "Enjoy the photo");startActivity(Intent.createChooser(sendIntent, "Email:"));因此,如果我使用Gmail菜單上下文啟動,它將顯示附件,允許我鍵入電子郵件發(fā)送給誰,并編輯Body&Subject。別小題大作。我點擊發(fā)送,它就發(fā)送。唯一的問題是附件沒有發(fā)送。所以。我想,為什么不試試電子郵件菜單上下文(用于我手機上的備用電子郵件帳戶)。它顯示附件,但在正文或主題中根本沒有文本。當我發(fā)送它時,附件發(fā)送正確。這會讓我相信有些事很不對勁。我是否需要一個新的許可在宣言發(fā)布,意圖發(fā)送電子郵件w/附件?我做錯什么了?
查看完整描述

3 回答

?
守著一只汪

TA貢獻1872條經(jīng)驗 獲得超4個贊

同樣的問題

代碼:

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
    emailIntent.setType("image/jpeg");
    emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] 
    {"me@gmail.com"}); 
    emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, 
    "Test Subject"); 
    emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, 
    "go on read the emails"); 
    Log.v(getClass().getSimpleName(), "sPhotoUri=" + Uri.parse("file:/"+ sPhotoFileName));
    emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:/"+ sPhotoFileName));
    startActivity(Intent.createChooser(emailIntent, "Send mail..."));

亞行日志:

V/DumbDumpersMain( 3972):   sPhotoUri=file://sdcard/DumbDumpers/DumbDumper.jpgI/ActivityManager(   56):   Starting activity: Intent { action=android.intent.action.CHOOSER comp={android/com.android.internal.app.ChooserActivity} (has extras) }I/ActivityManager(   56):   Starting activity: Intent { action=android.intent.action.SEND type=jpeg/image flags=0x3000000 comp={com.google.android.gm/com.google.android.gm.ComposeActivityGmail} (has extras) }I/ActivityManager(   56):   Starting activity: Intent { action=android.intent.action.SEND type=jpeg/image flags=0x2800000 comp={com.google.android.gm/com.google.android.gm.ComposeActivity} (has extras) }D/gmail-ls(  120):      MailProvider.query: content://gmail-ls/labels/me@gmail.com(null, null)D/Gmail   ( 2507):      URI FOUND:file://sdcard/DumbDumpers/DumbDumper.jpg

看起來電子郵件提供者正在附加一個0長度的文件。當我檢查文件系統(tǒng)時,文件就在那里并進行更正。創(chuàng)建圖像文件的代碼在嘗試發(fā)送電子郵件之前已經(jīng)完成。

有人在沒有魔法重啟的情況下修復了這個(我已經(jīng)試過了)?

問候,
魚鰭

更新

對我來說應(yīng)該是

file:///sdcard/DumbDumpers/DumbDumper.jpg

你需要額外的/因為這指向根目錄,即:

file:// + /sdcard/DumbDumpers/DumbDumper.jpg

合并為

file:///sdcard/DumbDumpers/DumbDumper.jpg

在上面的片段中,您需要:

emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+ sPhotoFileName));

我希望這能幫到你。我花了好長時間調(diào)試。

問候,
芬利




查看完整回答
反對 回復 2019-08-03
?
慕碼人2483693

TA貢獻1860條經(jīng)驗 獲得超9個贊

只是我身邊的一點評論。我在Gmail上也遇到了同樣的問題,但是當我首先將所討論的文件存儲在SD卡上,然后從那里而不是從資產(chǎn)中檢索它時,它似乎就起作用了。所以我的代碼如下:

Intent i = new Intent(Intent.ACTION_SEND);i.putExtra(Intent.EXTRA_SUBJECT, "Title");i.putExtra(Intent.EXTRA_TEXT, "Content");i.putExtra(Intent.EXTRA_STREAM, uri);i.setType("text/plain");startActivity(Intent.createChooser(i, "Send mail"));

在這里,

uri = Uri.fromFile(new File(context.getFilesDir(), FILENAME));

是嗎?工作,而

uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), FILENAME));

的確如此。



查看完整回答
反對 回復 2019-08-03
?
ABOUTYOU

TA貢獻1812條經(jīng)驗 獲得超5個贊

使用“Uri.fromFile(新的File(Environment.getExternalStorageDirectory(),”文件名“)代替”Uri.parse“

getExternalStorageDirectory()-到sdCard或任何其他外部存儲的路徑


查看完整回答
反對 回復 2019-08-03
  • 3 回答
  • 0 關(guān)注
  • 550 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號