私のアプリケーションは、 Excelスプレッドシートデータ( JExcell APIによって作成された)をエクスポートする便利な方法として、intentメソッドを使用してユーザーに電子メールを送信します。
このファイルは、SDカードのrecordsというフォルダに含まれています。
私が送信しようとしているファイルは、measurments.xlsと呼ばれています。
送信する前に、ファイルの存在をコードでテストしました。メールコンポーザーに添付ファイルが表示されますが、メールを送受信すると添付ファイルが表示されません。
ただし、Excelファイルをpng画像に置き換えると添付ファイルが届きます。それで、何が得られますか?
以下は、私が電子メールを送信するために使用するコードです。これは、クラス内でそれ自体がパラメータ化された静的メソッドにすぎません。
public static void sendEmailWithAttachment(Context ctx, String to,String subject, String message, String fileAndLocation)
{
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("text/plain");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] {to});
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, message);
File file = new File(fileAndLocation);
// File file = getFileStreamPath();
if (file.exists())
{
Log.v("Farmgraze", "Email file_exists!" );
}
else
{
Log.v("Farmgraze", "Email file does not exist!" );
}
Log.v("FarmGraze", "SEND EMAIL FileUri=" + Uri.parse("file:/"+ fileAndLocation));
emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:/"+ fileAndLocation));
ctx.startActivity(Intent.createChooser(emailIntent, "Send mail..."));
}//end method
では、xlsファイルを受信するには何をする必要がありますか?メソッドのコードの2行目のmimeタイプを変更しますか?もしそうなら、何をしますか。役立つアドバイスをいただければ幸いです。
読んでくれてありがとう。
A.