Ich habe eine App, die Bilder von der URL teilt. Letztes Android-Update, ich habe die Nachricht von Instagram "Bild kann nicht geladen werden" erhalten, wenn ich ein Bild im Instagram-Feed freigeben möchte.
Aber ich kann Bildgeschichte, direkte Nachricht und überall teilen ... Ich habe dieses Problem nur 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
quelle
quelle
Antworten:
Facebook arbeitet an diesem Fehler, warten wir! Abonnieren Sie, um eine Benachrichtigung über Aktualisierungen dieses Fehlerberichts zu erhalten. https://developers.facebook.com/support/bugs/1326888287510350/
quelle
Update: Dieses Problem wurde in der Version von Instagram behoben, die Anfang dieser Woche veröffentlicht wurde. Problemumgehungen sind nicht mehr erforderlich.
Keine der oben genannten Lösungen hat bei mir funktioniert, da das direkte Teilen über
ContentProvider
oder dessen Ableitung anscheinendFileProvider
durch eine Änderung in der Instagram-App unterbrochen wurde.Ich habe festgestellt, dass das Teilen eines
MediaStore
Inhalts von Uri immer noch funktioniert, da andere Apps wie Google Fotos, die vor dem Teilen in den MediaStore schreiben, weiterhin Bilder für den Feed freigeben konnten.Sie können ein Bild einfügen ,
File
um dasMediaStore
wie folgt:Uri
Teilen Sie dann mit dem, was Sie zurückgegeben haben, über Intent wie folgt:Obwohl es nicht ideal ist, da das Bild dann in das geschrieben wird
MediaStore
, was in vielen Fällen möglicherweise nicht erwünscht ist, ermöglicht es die Möglichkeit, mittelfristig zu teilen, während Instagram ihren Whoopsie korrigiert.quelle
Ihre URL lautet "content: //packagename/xxx.jpg". Sie muss "content: // media / external / images / media / ..." sein. es wird gearbeitet.
quelle
Problem mit dem neuesten Instagram-Update behoben
quelle
Ok, ich habe gesucht und eine Lösung gefunden. Ich weiß nicht, ob dies der richtige Weg ist, aber ich habe mein Problem gelöst.
In dieser Antwort eine Lösung gefunden.
quelle
Facebook hat anscheinend bereits den Fehler für dieses Problem: https://developers.facebook.com/support/bugs/1326888287510350/
Als vorübergehende Problemumgehung können Sie Medien im MediaStore speichern. Dies ist die Methode, mit der wir die URL für die Instagram-Freigabe speichern und dann zurückgeben.
quelle