以前にディスクに保存した画像を共有しようとしています。を送信しIntent.ACTION_SEND
ます。問題は、私の場合、さまざまなアプリ、公式Gmailアプリ、TweetDeckと互換性を持たせる方法が見つからないことです。
共有したい画像は:に含まれていFile
ます
File agendaFile;
// its path using getAbsolutePath() -> /data/data/com.mypackage/files/agenda.jpg
オプションA)Uri.fromFileを使用する
Uri agendaUri = Uri.fromFile(agendaFile);
// the value -> file:///data/data/com.mypackage/files/agenda.jpg
結果
- Gmail、画像はメールに添付されていますか?いいえ
- Tweetdeck、ツイートメッセージに画像が追加されていますか?はい
オプションB)Uri.parseを使用する
Uri agendaUri = Uri.parse(agendaFile.toURI().toString());
// the value -> file:/data/data/com.mypackage/files/agenda.jpg
結果
- Gmail、画像はメールに添付されていますか?はい
- Tweetdeck、ツイートメッセージに画像が追加されていますか?いいえ
ついに
どちらの場合も、次のようなインテントを送信します。
final Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("image/jpg");
intent.putExtra(android.content.Intent.EXTRA_STREAM, agendaUri);
startActivity(Intent.createChooser(intent, "title"));
それで、画像を共有する他のオプションはありますか?ほとんどのアプリと互換性のある画像を共有するための最良の方法はどのようにすればよいですか?
ありがとう!