7

ファイルをSDカードから電子メールに添付しようとする前に、この質問の変形が尋ねられたことは知ってい ます が、提供された解決策、つまり再起動ではうまくいかないようです。私はこれが問題であることを支持するかなりの数のグループ投稿を見てきました。リンクされた質問のOPが、おそらく彼のコードが機能することを可能にしたマニフェストに、他のいくつかの変更を加えたと想定することしかできません。

私が見ている動作は、SDカードからのjpegの添付ファイルを処理するが、送信時に破棄される長さ0のファイルとして処理するEメー​​ルインテントです。setTypeをjpeg/imageとimage/jpegとして試してみましたが、両方の方法で表現されているのがわかりました。

Intent sendIntent = new Intent(Intent.ACTION_SEND);
    sendIntent.setType("jpeg/image");
    sendIntent.putExtra(Intent.EXTRA_EMAIL, "me@gmail.com");
    sendIntent.putExtra(Intent.EXTRA_SUBJECT, R.string.email_subjectStart + 
            mWhatYouSpotted.getSelectedItem().toString() +
            R.string.email_subjectEnd);
    sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:/"+ sPhotoFileName));
    sendIntent.putExtra(Intent.EXTRA_TEXT, sEmailBody);

    startActivity(Intent.createChooser(sendIntent, "Email:"));

これが、最後にテストしたときに取得したadblogcatです。

V / DumbDumpersMain(3972):sPhotoUri = file://sdcard/DumbDumpers/DumbDumper.jpg I / ActivityManager(56):アクティビティの開始:インテント{action = android.intent.action.CHOOSER comp = {android/com.android。 internal.app.ChooserActivity}(追加機能あり)} I / ActivityManager(56):アクティビティの開始:インテント{action = android.intent.action.SEND type = jpeg / image flags = 0x3000000 comp = {com.google.android.gm /com.google.android.gm.ComposeActivityGmail}(追加機能あり)} I / ActivityManager(56):アクティビティの開始:インテント{action = android.intent.action.SEND type = jpeg / image flags = 0x2800000 comp={com。 google.android.gm/com.google.android.gm.ComposeActivity}(追加機能あり)} 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

私は1週間以上これに頭をぶつけてきましたが、それでも何が悪いのか判断できません。何か案は?

4

2 に答える 2

7

投稿する前に、ここでもっと検索する必要がありました。添付ファイル付きの電子メールを送信する問題がプログラムで解決しました。しかありませんがfile://sdcard/DumbDumpers/DumbDumper.jpg、画像を正常に添付したように見えます。/それを機能させるには、追加が必要です。

file:///sdcard/DumbDumpers/DumbDumper.jpg
       ^
于 2009-08-18T19:35:37.897 に答える
4

インテント タイプが間違っています。そのはず

sendIntent.setType("image/jpg");
于 2010-06-07T14:22:20.110 に答える