私のアプリケーションはローカルのデータをネイティブのSQLiteデータベースに保存します。ユーザーは.csvファイルを電子メールで送信してこのデータをエクスポートできます。その後、電子メールに添付、これを行うために、私は、データベースから.csvファイルを生成することだし、SDカードに書き込む:すべてが素晴らしい作品Android:SDに書き込むことなくメールをファイルに添付できますか?
StringBuilder csv = generateFile();
writeFile(csv.toString(),"file.csv");
Intent email = new Intent(android.content.Intent.ACTION_SEND);
email.setType("application/octet-stream");
email.putExtra(android.content.Intent.EXTRA_STREAM, Uri.parse("file://sdcard/file.csv"));
を。しかし、最初にSDに書き込むステップをスキップして、データを直接添付することができるかどうかは疑問だ。
答えとして投稿するつもりはありませんが、メモリ内のストリームにCSVファイルを書き込んだ後、そのストリームを電子メールの意図に渡すことはできませんか? – MattC
@MattC:いいえ、ストリームである「余分な」タイプがないためです。 – CommonsWare
+1良い質問.. – SRam