38 votes

Publier une vidéo sur Instagram à l'aide de crochets

Je veux que mon application puisse télécharger des vidéos sur instagram.

http://instagram.com/developer/iphone-hooks/ donne des informations sur l'utilisation des crochets iphone pour télécharger une photo sur instagram. Ma question est de savoir si quelqu'un a une expérience sur la façon d'accomplir la même chose mais pour une vidéo?

44voto

Instagram de l'API n'est pas directement en charge le téléchargement de tout, d'applications 3ème partie. Par conséquent, vous avez à faire un peu laid expérience utilisateur des compromis lors de la prestation de fonctionnalités aux utilisateurs.

Tout d'abord, Préparer la vidéo que vous souhaitez télécharger sur Instagram et stocker le chemin d'accès à quelque part

Deuxièmement, l'Enregistrer à la Caméra de l'utilisateur Roll:

if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(filePath)) {
    UISaveVideoAtPathToSavedPhotosAlbum(filePath, self, @selector(video:didFinishSavingWithError:contextInfo:), nil);
}

Troisièmement, maintenant que la vidéo est enregistrée, indiquer à l'utilisateur que pour télécharger la vidéo sur son Instagram, ils doivent sélectionnez à partir de leur pellicule après avoir cliqué sur le bouton de téléchargement.

Le bouton de téléchargement serait tout simplement de faire ce qui suit:

NSURL *instagramURL = [NSURL URLWithString:@"instagram://camera"];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    [[UIApplication sharedApplication] openURL:instagramURL];
}

C'est très idiot que l'Instagram de l'API ne prend pas en charge immédiate de sélection des médias par le biais de l'API de points de terminaison pour télécharger fins, mais comme il est en ce moment, c'est le seul moyen.

21voto

johnnyg17 Points 44

J'ai eu une question similaire: Instagram Vidéo iPhone Crochet et j'ai tout compris. Il y a un sans-papiers iPhone crochet qui permet de sélectionner automatiquement les actifs de l'iphone photo rouleau, et précharger une légende de la vidéo. Cela devrait vous donner la même expérience utilisateur que Flipagrams application a avec le partage d'une vidéo pour Instagram.

instagram://library?AssetPath=assets-library%3A%2F%2Fasset%2Fasset.mp4%3Fid%3D8864C466-A45C-4C48-B76F-E3C421711E9D%26ext%3Dmp4&InstagramCaption=Some%20Preloaded%20Caption

NSURL *videoFilePath = ...; // Your local path to the video
NSString *caption = @"Some Preloaded Caption";
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeVideoAtPathToSavedPhotosAlbum:[NSURL URLWithString:videoFilePath] completionBlock:^(NSURL *assetURL, NSError *error) {
    NSURL *instagramURL = [NSURL URLWithString:[NSString stringWithFormat:@"instagram://library?AssetPath=%@&InstagramCaption=%@",[assetURL absoluteString].percentEscape,caption.percentEscape]];
    if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
        [[UIApplication sharedApplication] openURL:instagramURL];
    }
}];

10voto

user1755548 Points 11

essayez avec:

 instagram://library?AssetPath=yourVideoPath
 

j'ai trouvé la solution ici: http://blog.horizon.camera/post/102273431070/video-share-objc-ios-instagram

1voto

David Schwartz Points 461

L'Instagram de l'API est extrêmement limité dans sa fonctionnalité de téléchargement, en particulier quand il s'agit de fichiers vidéo.

Ce que je comprends, en gros, vous avez deux options quand il s'agit de téléchargement des fichiers multimédia à Instagram. Vous pouvez soit utiliser le Document de l'Interaction de l'API pour passer d'une image à l'Instagram app, ou vous pouvez appeler l'Instagram de la caméra et de demander à l'utilisateur de choisir à partir de leur pellicule (comme Nico l'a dit).

Je suis sûr que vous pouvez transmettre uniquement les fichiers JPEG ou PNG pour Instagram à travers le Document de système d'Interaction, de sorte que pour la vidéo je crois que vous êtes coincé avec la pellicule pour l'instant. Ce n'est certainement pas idéal, l'application que je suis en train de travailler sur la droite utilise maintenant iPhone crochets, mais nous avons décidé de rester avec des images jusqu'à Instagram améliore leur API.

-3voto

codercat Points 5586

vous pouvez le faire par les médias point de fin

https://api.instagram.com/v1/media/3?access_token=ACCESS-TOKEN

Obtenir des informations sur un objet multimédia. Le retour de type clé vous permettra de différencier entre l'image et la vidéo.

http://instagram.com/developer/endpoints/media/

Ici, ce lien est pour obtenir l'image id de média. mais j'espère même technique va avoir de l'aide dans la vidéo.

Où puis-je trouver les Instagram media ID d'une image

NSURL *instagramURL = [NSURL URLWithString:@"instagram://media?id=315"];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    [[UIApplication sharedApplication] openURL:instagramURL];
}

Avantage info:

  1. instagram://caméra va ouvrir l'appareil photo ou la photo de la bibliothèque (selon l'appareil),
  2. instagram://app ouvrez l'application
  3. instagram://utilisateur?nom d'utilisateur=foo sera ouvert que le nom d'utilisateur
  4. instagram://emplacement?id=1 ouvrez cet emplacement
  5. instagram://media?id=315 sera ouvert que les médias

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X