Durch Teilen im Feed können die Nutzer deiner App deinen Content in ihrem Instagram-Feed teilen.
Deine App kann mit impliziten Intents auf Android und universellen Links oder Document Interaction auf iOS Fotos und Videos an die Instagram-App übergeben. Die Instagram-App empfängt diese Inhalte und lädt sie in das Feed-Eingabefeld, sodass der Nutzer sie in seinem Instagram-Feed veröffentlichen kann.
Android-Implementierungen verwenden implizite Intents mit dem Extra EXTRA_STREAM, um den Benutzer zur Auswahl der Instagram-App aufzufordern. Nach Auswahl startet der Intent die Instagram-App und übergibt deinen Content. Dieser wird dann von der Instagram-App in das Feed-Eingabefeld geladen.
Grundsätzlich sollte dein Teilen-Vorgang Folgendes bewirken:
Du kannst folgenden Content an die Instagram-App übergeben:
Content | Dateitypen | Beschreibung |
---|---|---|
Bildelement | JPEG, GIF oder PNG | - |
Dateielement | MKV, MP4 | Mindestdauer: 3 Sekunden Höchstdauer: 10 Minuten Mindestgröße: 640 x 640 Pixel |
String type = "image/*"; String filename = "/myPhoto.jpg"; String mediaPath = Environment.getExternalStorageDirectory() + filename; createInstagramIntent(type, mediaPath); private void createInstagramIntent(String type, String mediaPath){ // Create the new Intent using the 'Send' action. Intent share = new Intent(Intent.ACTION_SEND); // Set the MIME type share.setType(type); // Create the URI from the media File media = new File(mediaPath); Uri uri = Uri.fromFile(media); // Add the URI to the Intent. share.putExtra(Intent.EXTRA_STREAM, uri); // Broadcast the Intent. startActivity(Intent.createChooser(share, "Share to")); }
String type = "video/*"; String filename = "/myVideo.mp4"; String mediaPath = Environment.getExternalStorageDirectory() + filename; createInstagramIntent(type, mediaPath); private void createInstagramIntent(String type, String mediaPath){ // Create the new Intent using the 'Send' action. Intent share = new Intent(Intent.ACTION_SEND); // Set the MIME type share.setType(type); // Create the URI from the media File media = new File(mediaPath); Uri uri = Uri.fromFile(media); // Add the URI to the Intent. share.putExtra(Intent.EXTRA_STREAM, uri); // Broadcast the Intent. startActivity(Intent.createChooser(share, "Share to")); }
iOS-Implementierungen können universelle Links zum Starten der Instagram-App, zur Übergabe von Content oder zur Durchführung einer bestimmten Aktion verwenden.
Verwende die in der nachfolgenden Tabelle gelisteten universellen Links, um Aktionen in der Instagram-App durchzuführen.
Universeller Link | Aktion |
---|---|
https://www.instagram.com | Startet die Instagram-App. |
https://www.instagram.com/create/story | Startet die Instagram-App mit aktivierter Kamera bzw. Fotobibliothek bei Geräten ohne Kamera. |
https://www.instagram.com/p/{media_id} | Startet die Instagram-App und lädt den Beitrag, der dem angegebenen ID-Wert entspricht ( |
https://www.instagram.com/{username} | Startet die Instagram-App und lädt den Instagram-Nutzer, der dem angegebenen Benutzernamen-Wert entspricht ( |
https://www.instagram.com/explore/locations/{location_id} | Startet die Instagram-App und lädt den Standort-Feed, der dem angegebenen ID-Wert entspricht ( |
https://www.instagram.com/explore/tags/{tag_name} | Startet die Instagram-App und lädt die Seite für den Hashtag, der dem angegebenen Namenswert entspricht ( |
Das folgende Beispiel in Objective-C startet die Instagram-App mit aktivierter Kamera.
NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/create/story"]; if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) { [[UIApplication sharedApplication] openURL:instagramURL]; }
Wenn deine Anwendung Fotos erstellt und du möchtest, dass deine Nutzer diese Fotos in Instagram teilen können, kannst du mithilfe der Document Interaction API das Foto im Teilen-Vorgang von Instagram öffnen.
Zunächst musst du die Datei im Format PNG oder JPEG (bevorzugt) mit der Dateierweiterung .ig
speichern. Mit den Document Interaction APIs von iOS kannst du dafür sorgen, dass das Foto von Instagram geöffnet wird. Die ID für unsere Document Interaction UTI lautet com.instagram.photo
. Sie entspricht den UTIs public/jpeg und public/png. Weitere Informationen dazu findest du in den folgenden Apple-Dokumentationsartikeln: Previewing and Opening Files und UIDocumentInteractionController Class Reference.
Wenn in der Anwendungsliste nur Instagram (anstelle von Instagram plus allen anderen public/jpeg-konformen Apps) angezeigt werden soll, kannst du alternativ die Erweiterungsklasse igo
angeben, die den Typ com.instagram.exclusivegram
aufweist.
Wird diese ausgelöst, zeigt Instagram dem Nutzer direkt unseren Filter-Bildschirm an. Das Bild wird geladen und die Größe für Instagram angepasst. Die besten Ergebnisse werden mit einer JPEG-Datei von 640 x 640 Pixeln erzielt. Wenn das Bild größer ist, wird die Größe dynamisch angepasst.