2012年1月11日水曜日

toURI()は使えないの?

一度ハマった穴にもう一度ハマると死にたくなるのでココに書いておく。

Intentで Intent.ACTION_SEND を指定して、ファイルを添付させたい場合に
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.setType("application/octet-stream");
intent.putExtra(Intent.EXTRA_STREAM,ここに添付ファイルのURIを);
startActivity(intent);

って感じなんだけども、このURIの指定をFileインスタンス.toURI() でURIにして指定すると、実行時でExceptionが。

結局、
intent.putExtra(Intent.EXTRA_STREAM,Uri.parse("file://" + Fileインスタンス.getAbsolutePath()));
 
ってやったら上手く行った。