Como mostrar uma imagem por meio de uma intenção compatível com aplicativos diferentes
Estou tentando compartilhar uma imagem que salvei anteriormente em disco, enviando umIntent.ACTION_SEND
. O problema é que não consigo encontrar uma maneira de ser compatível com aplicativos diferentes, o aplicativo oficial do Gmail e o TweetDeck no meu caso.
A imagem que quero compartilhar está contida em umFile
:
File agendaFile;
// its path using getAbsolutePath() -> /data/data/com.mypackage/files/agenda.jpg
Opção A) usando Uri.fromFileUri agendaUri = Uri.fromFile(agendaFile);
// the value -> file:///data/data/com.mypackage/files/agenda.jpg
ResultadosGmail, a imagem é anexada ao email?NÃOTweetdeck, a imagem é adicionada à mensagem do tweet?SIMOpção B) usando Uri.parseUri agendaUri = Uri.parse(agendaFile.toURI().toString());
// the value -> file:/data/data/com.mypackage/files/agenda.jpg
ResultadosGmail, a imagem é anexada ao email?SIMTweetdeck, a imagem é adicionada à mensagem do tweet?NÃOFinalmenteEm ambos os casos eu envio a intenção assim:
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"));
Então, há outras opções para compartilhar uma imagem? Como é a melhor maneira de compartilhar uma imagem compatível com a maioria dos aplicativos possível?
Obrigado!