Eu tenho um aplicativo que compartilha imagens do URL. Última atualização do Android, recebi a mensagem do instagram "Não é possível carregar a imagem" quando quero compartilhar uma imagem no feed do instagram.
Mas posso compartilhar histórias de imagens, mensagens diretas e todos os lugares ... Estou tendo esse problema apenas no instagram feed.
public void onShareItemOreo() {
// Get access to bitmap image from view
imageView = (ImageView) findViewById(R.id.thumbnail);
// Get access to the URI for the bitmap
Uri bmpUri = prepareShareIntent(imageView);
if (bmpUri != null) {
//outfile is the path of the image stored in the gallery
// Construct a ShareIntent with link to image
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, bmpUri);
shareIntent.setData(bmpUri);
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
shareIntent.setType("image/*");
shareIntent.putExtra(Intent.EXTRA_TEXT,marketLink);
// Launch sharing dialog for image
startActivity(Intent.createChooser(shareIntent, "Share Image"));
} else {
//
}
}
public Uri prepareShareIntent(ImageView imageView) {
// Fetch Bitmap Uri locally
Drawable drawable = imageView.getDrawable();
Bitmap bmp = null;
if (drawable instanceof BitmapDrawable){
bmp = ((BitmapDrawable) imageView.getDrawable()).getBitmap();
} else {
return null;
}
Uri bmpUri = getBitmapFromDrawable(bmp);// see previous remote images section and notes for API > 23
// Construct share intent as described above based on bitmap
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, bmpUri);
shareIntent.setType("image/*");
return bmpUri;
}
android
image
android-intent
share
jancooth
fonte
fonte
Respostas:
O Facebook está trabalhando nesse bug, vamos esperar! Inscreva-se para receber uma notificação de atualizações neste relatório de bug. https://developers.facebook.com/support/bugs/1326888287510350/
fonte
Atualização: esse problema foi corrigido na versão do Instagram lançada no início desta semana. Soluções alternativas não são mais necessárias.
Nenhuma das soluções mencionadas acima funcionou para mim, pois parece que o compartilhamento direto via
ContentProvider
ou seu derivadoFileProvider
foi interrompido por uma alteração feita no aplicativo Instagram.MediaStore
Notei que o compartilhamento de um conteúdo Uri ainda funciona, pois outros aplicativos, como o Google Fotos, que gravam no MediaStore antes do compartilhamento, ainda podiam compartilhar imagens para alimentar.Você pode inserir uma imagem
File
daMediaStore
seguinte maneira:Depois disso
Uri
, compartilhe via Intent da seguinte maneira:Embora não seja o ideal, como a imagem é gravada no
MediaStore
, o que pode não ser o comportamento desejado em muitos casos, ela reativa a capacidade de compartilhar a médio prazo enquanto o Instagram corrige o seu grito.fonte
seu uri é "content: //packagename/xxx.jpg", ele precisa ser "content: // media / external / images / media / ..."; será trabalhado.
fonte
Problema resolvido com a atualização mais recente do instagram
fonte
Ok, procurei e encontrei uma solução. Não sei se esse é o caminho certo, mas resolvi o meu problema ..
Solução encontrada nesta resposta.
fonte
Parece que o Facebook já possui o bug para esse problema: https://developers.facebook.com/support/bugs/1326888287510350/
Como solução temporária, você pode salvar a mídia no MediaStore. Esse é o método que usamos para armazenar e retornar a uri para o compartilhamento do Instagram.
fonte