Con Compartir en la sección de noticias, puedes permitir que los usuarios de tu aplicación compartan tu contenido en su sección de noticias de Instagram.
Si usas los intentos implícitos de Android y los enlaces universales o la interacción de documentos de iOS, tu aplicación puede pasar fotos y vídeos a la aplicación Instagram. La aplicación Instagram recibirá este contenido y lo cargará en el editor de la sección de noticias para que el usuario pueda publicarlo en su sección de noticias de Instagram.
Las implementaciones de Android utilizan los intentos implícitos con el parámetro extra EXTRA_STREAM para solicitar al usuario que seleccione la aplicación Instagram. Una vez seleccionada, el intento iniciará la aplicación Instagram y le pasará tu contenido, que a continuación Instagram cargará en el editor de la sección de noticias.
En general, el proceso para compartir contenido debe ser el siguiente:
Puedes pasar el contenido siguiente a la aplicación Instagram:
Contenido | Tipos de archivos | Descripción |
---|---|---|
Activo de imagen | JPEG, GIF o PNG | - |
Activo de archivo | MKV o MP4 | Duración mínima: 3 segundos. Duración máxima: 10 minutos. Dimensiones mínimas: 640 × 640 píxeles. |
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")); }
Las implementaciones de iOS pueden usar los enlaces universales para iniciar la aplicación Instagram y pasarle contenido o hacer que realice una acción específica.
Puedes utilizar los enlaces universales que se incluyen en la siguiente tabla para realizar acciones en la aplicación Instagram.
Enlace universal | Acción |
---|---|
https://www.instagram.com | Iniciar la aplicación Instagram. |
https://www.instagram.com/create/story | Iniciar la aplicación Instagram con la vista de la cámara o la biblioteca de fotos en dispositivos que no son cámaras. |
https://www.instagram.com/p/{media_id} | Iniciar la aplicación Instagram y cargar la publicación que coincida con el valor del identificador indicado ( |
https://www.instagram.com/{username} | Iniciar la aplicación Instagram y cargar el usuario de esta plataforma que coincida con el valor del nombre de usuario indicado ( |
https://www.instagram.com/explore/locations/{location_id} | Iniciar la aplicación Instagram y cargar la lista de ubicaciones que coincida con el valor del identificador indicado ( |
https://www.instagram.com/explore/tags/{tag_name} | Iniciar la aplicación Instagram y cargar la página del hashtag que coincida con el valor del nombre indicado ( |
En el ejemplo en Objective-C que se incluye a continuación se inicia la aplicación Instagram con la vista de la cámara.
NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/create/story"]; if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) { [[UIApplication sharedApplication] openURL:instagramURL]; }
Si tu aplicación crea fotos y quieres que los usuarios las compartan a través de Instagram, puedes usar la API de interacción de documentos para abrir una foto en el proceso para compartir contenido de Instagram.
Primero debes guardar el archivo en formato PNG o JPEG (preferido) y usar la extensión de nombre de archivo .ig
. Con las API de interacción de documentos de iOS, puedes activar la foto para que se abra en Instagram. El identificador de nuestro UTI de interacción de documentos es com.instagram.photo
y se ajusta a los UTI de tipo public/jpeg y public/png. Para obtener más información, consulta los siguientes artículos de documentación de Apple: Vista previa y apertura de archivos y la referencia de la clase UIDocumentInteractionController.
Como alternativa, si quieres que solo aparezca Instagram en la lista de aplicaciones (en lugar de Instagram y las demás aplicaciones que se ajusten al UTI de tipo public/jpeg), puedes especificar la clase de extensión igo
, que es de tipo com.instagram.exclusivegram
.
Cuando se active, Instagram presentará inmediatamente al usuario la pantalla de filtro. La imagen se precarga y dimensiona correctamente para Instagram. Para obtener los mejores resultados, Instagram prefiere abrir un archivo cuadrado JPEG de 640 x 640 píxeles. Si la imagen es más grande, se dimensionará de forma dinámica.