Avec le partage dans le fil, vous pouvez autoriser les utilisateurs de votre application à partager votre contenu dans leur fil Instagram.
En utilisant les intentions implicites (Android) et les liens universels ou l’API Document Interaction (iOS), votre application peut transmettre des photos et des vidéos à l’application Instagram. Celle-ci reçoit le contenu et le charge dans l’éditeur de fil afin que l’utilisateur puisse le publier sur son fil Instagram.
Les implémentations Android utilisent des intentions implicites avec la valeur supplémentaire EXTRA_STREAM pour inviter l’utilisateur à sélectionner l’application Instagram. Une fois cette dernière sélectionnée, l’intention lance Instagram et lui transmet votre contenu, qui est alors chargé dans l’éditeur de fil de l’application Instagram.
En général, le flux de partage doit :
Vous pouvez transmettre le contenu suivant à l’application Instagram :
Contenu | Types de fichiers | Description |
---|---|---|
Ressource image | JPEG, GIF ou PNG | - |
Ressource fichier | MKV et MP4 | Durée minimale : 3 secondes Durée maximale : 10 minutes Dimensions minimales : 640 x 640 pixels |
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")); }
Les implémentations iOS peuvent utiliser les liens universels pour lancer l’application Instagram et lui transmettre du contenu ou lui faire effectuer une action spécifique.
Utilisez les liens universels répertoriés dans le tableau suivant pour effectuer des actions dans l’application Instagram.
Lien universel | Action |
---|---|
https://www.instagram.com | Lance l’application Instagram. |
https://www.instagram.com/create/story | Lance l’application Instagram en mode appareil photo ou en affichant la bibliothèque sur les appareils ne disposant pas d’un appareil photo. |
https://www.instagram.com/p/{media_id} | Lance l’application Instagram et charge la publication correspondant à la valeur d’identifiant fournie ( |
https://www.instagram.com/{username} | Lance l’application Instagram et charge l’utilisateur Instagram correspondant à la valeur de nom d’utilisateur fournie ( |
https://www.instagram.com/explore/locations/{location_id} | Lance l’application Instagram et charge le fil de lieux correspondant à la valeur d’identifiant fournie ( |
https://www.instagram.com/explore/tags/{tag_name} | Lance l’application Instagram et charge la page pour le hashtag correspondant à la valeur de nom fournie ( |
L’exemple suivant de code Objective-C lance l’application Instagram en mode appareil photo.
NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/create/story"]; if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) { [[UIApplication sharedApplication] openURL:instagramURL]; }
Si votre application crée des photos et que vous vouliez que les utilisateurs\utilisatrices puissent les partager sur Instagram, vous pouvez appeler l’API Document Interaction pour ouvrir les photos dans le fil de partage d’Instagram.
Vous devez d’abord enregistrer votre fichier au format PNG ou JPEG (comme vous préférez) et utiliser l’extension de nom de fichier .ig
. Avec l’API Document Interaction pour iOS, vous pouvez déclencher l’ouverture des photos par Instagram. L’identifiant pour notre UTI Document Interaction est com.instagram.photo
. Il est conforme aux UTI public/jpeg et public/png. Pour en savoir plus, consultez ces articles de la documentation Apple : Previewing and Opening Files (Prévisualisation et ouverture de fichiers) et UIDocumentInteractionController Class Reference (Documentation de référence sur la classe UIDocumentInteractionController).
Par ailleurs, si vous ne voulez afficher que l’application Instagram dans la liste d’applications (au lieu d’Instagram plus toutes les autres applications conformes aux UTI public/jpeg), vous pouvez spécifier la classe d’extension igo
, qui est du type com.instagram.exclusivegram
.
Lors du déclenchement, Instagram présente immédiatement notre filtre d’écran à l’utilisateur. L’image est préchargée et affichée aux dimensions appropriées à Instagram. Pour de meilleurs résultats, Instagram privilégie l’ouverture d’une image JPEG carrée de 640 x 640 pixels. Si l’image est plus grande, elle sera redimensionnée de manière dynamique.