2016-12-29 64 views
1

我想从相机胶卷到Instagram的带标签的视频。我的应用程序使用以下代码使用挂钩的Instagram视频分享

- (void)share 
{ 
    NSString *Caption = @"#baby"; 
    NSString *urlString = [NSString stringWithFormat:@"assets-library://asset/asset.mov?id=%@&ext=mov",assetLocalID]; 
    NSURL *url = [NSURL URLWithString:urlString]; 
    NSString *escapedString = [url.absoluteString URLEncode]; 
    NSString *escapedCaption = [caption URLEncode]; 
    NSURL *instagramURL  = [NSURL URLWithString:[NSString stringWithFormat:@"instagram://library?AssetPath=%@&InstagramCaption=%@", escapedString, escapedCaption]]; 
    [[UIApplication sharedApplication] openURL:instagramURL]; 
} 

- (NSString *)URLEncode 
{ 
    return [self URLEncodeUsingEncoding:NSUTF8StringEncoding]; 
} 

- (NSString *)URLEncodeUsingEncoding:(NSStringEncoding)encoding { 
    return (__bridge_transfer NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, (__bridge CFStringRef)self,NULL,(CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ",CFStringConvertNSStringEncodingToEncoding(encoding)); 
} 

但标题不添加到Instagram。 我想添加标签。 我已经通过https://www.instagram.com/developer/mobile-sharing/iphone-hooks/,但它并没有帮助我!请分享你的想法。

回答

0

我想出了让我的应用程序接受instagram:// URL架构的想法。来自Flipagram的钩子在我的应用程序中打开如下:

instagram:// library?AssetPath = assets-library%3A%2F%2Fasset%2Fasset.mp4%3Fid%3D8864C466-A45C-4C48-B76F-E3C421711E9D %26ext%3Dmp4 & InstagramCaption =某些%20预先加载%20Caption

未记录的iPhone挂钩,允许您从iPhones照片卷中自动选择资源,并为视频预加载标题。这应该给你与Flipagrams应用程序共享Instagram视频的用户体验。

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]; 
} 
}]; 

很好用!

更新:Instagram已经删除了将标题传递给他们的应用程序的能力。现在最好的解决方案就是将所需的标题复制到粘贴板。

+0

删除了将标题传递给他们的应用程序的能力?所以无法为视频添加标签? – rishu1992

+0

@ rishu1992无法为视频添加标签。 –