Com o Como compartilhar no Feed, você pode permitir que os usuários do seu aplicativo compartilhem conteúdo no Feed do Instagram deles.
Ao usar os intents implícitos do Android e os links universais ou a interação de documentos do iOS, o seu aplicativo pode transferir fotos e vídeos para o aplicativo do Instagram. O aplicativo do Instagram receberá o conteúdo e fará o carregamento no Compositor do Feed para que o usuário possa publicá-lo no próprio Feed do Instagram.
As implementações do Android usam intents implícitos com o EXTRA_STREAM extra para solicitar que o usuário selecione o aplicativo do Instagram. Quando selecionado, o intent iniciará o aplicativo do Instagram e transferirá o conteúdo para ele. Depois disso, o conteúdo será carregado pelo aplicativo do Instagram no Compositor do Feed.
Em geral, o fluxo de compartilhamento deve incluir estas ações:
Você pode transferir o seguinte conteúdo para o aplicativo do Instagram:
Conteúdo | Tipos de arquivo | Descrição |
---|---|---|
Ativo de imagem | JPEG, GIF ou PNG | - |
Ativo de arquivo | MKV, MP4 | Duração mínima: 3 segundos/Duração máxima: 10 minutos/Dimensões mínimas: 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")); }
As implementações do iOS podem usar links universais para iniciar o aplicativo do Instagram e transferir um conteúdo para ele ou solicitar alguma ação específica.
Para realizar ações no aplicativo do Instagram, use os links universais listados abaixo:
Link universal | Ação |
---|---|
https://www.instagram.com | Inicia o aplicativo do Instagram. |
https://www.instagram.com/create/story | Inicia o aplicativo do Instagram com a visualização de câmera ou a biblioteca de fotos em dispositivos sem câmera. |
https://www.instagram.com/p/{media_id} | Inicia o aplicativo do Instagram e carrega a publicação que corresponde ao valor do ID especificado ( |
https://www.instagram.com/{username} | Inicia o aplicativo do Instagram e carrega o usuário do Instagram que corresponde ao valor do nome de usuário especificado ( |
https://www.instagram.com/explore/locations/{location_id} | Inicia o aplicativo do Instagram e carrega o feed de localização que corresponde ao valor do ID especificado ( |
https://www.instagram.com/explore/tags/{tag_name} | Inicia o aplicativo do Instagram e carrega a página da hashtag que corresponde ao valor do nome especificado ( |
Este exemplo de código em Objective-C inicia o aplicativo do Instagram com a visualização de câmera.
NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/create/story"]; if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) { [[UIApplication sharedApplication] openURL:instagramURL]; }
Caso o seu aplicativo crie fotos e você queira que os usuários as compartilhem no Instagram, use a API de Interação de Documentos para abrir a sua foto no fluxo de compartilhamento do Instagram.
Primeiro, salve o arquivo em formato PNG ou JPEG (preferencial) e use a extensão de nome de arquivo .ig
. Com as APIs de Interação de Documentos do iOS, você pode acionar a foto que será aberta pelo Instagram. O identificador do nosso UTI de interação de documentos é com.instagram.photo
. Ele está em conformidade com os UTIs public/jpeg e public/png. Consulte os artigos na documentação da Apple: Previewing and Opening Files e UIDocumentInteractionController Class Reference para mais informações.
Como alternativa, para mostrar somente o Instagram na lista de aplicativos (em vez do Instagram e outros aplicativos em conformidade com public/jpeg), especifique a classe de extensão igo
, que é do tipo com.instagram.exclusivegram
.
Quando acionado, o Instagram mostrará imediatamente ao usuário nossa tela de filtro. A imagem é pré-carregada e dimensionada de acordo com o Instagram. Para melhorar os resultados, o Instagram prefere abrir uma imagem quadrada em JPEG que tenha 640 x 640 pixels. Se a imagem for maior, ela será redimensionada dinamicamente.