一尘不染

如何在iOS中的Instagram上共享图像?

swift

我的客户希望在Instagram,Twitter,Facebook上共享图像。

我已经完成了Twitter和Facebook,但是在互联网上找不到任何API或任何东西可以在Instagram上共享图像。
是否可以在Instagram上分享图片? 如果是,那怎么办?

当我检查Instagram的开发人员站点时,我发现了Ruby on Rails和Python库。但是没有iOS Sdk的文档

我已经根据instagram.com/developer从instagram获得令牌,但现在不知道下一步如何与instagram图像共享。


阅读 611

收藏
2020-07-07

共1个答案

一尘不染

终于我得到了答案。您不能直接在instagram上发布图片。您必须使用UIDocumentInteractionController重新整理图像。

@property (nonatomic, retain) UIDocumentInteractionController *dic;

CGRect rect = CGRectMake(0 ,0 , 0, 0);
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, self.view.opaque, 0.0);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIGraphicsEndImageContext();
NSString  *jpgPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/test.igo"];

NSURL *igImageHookFile = [[NSURL alloc] initWithString:[[NSString alloc] initWithFormat:@"file://%@", jpgPath]];
self.dic.UTI = @"com.instagram.photo";
self.dic = [self setupControllerWithURL:igImageHookFile usingDelegate:self];
self.dic=[UIDocumentInteractionController interactionControllerWithURL:igImageHookFile];
[self.dic presentOpenInMenuFromRect: rect    inView: self.view animated: YES ];


- (UIDocumentInteractionController *) setupControllerWithURL: (NSURL*) fileURL usingDelegate: (id <UIDocumentInteractionControllerDelegate>) interactionDelegate {
     UIDocumentInteractionController *interactionController = [UIDocumentInteractionController interactionControllerWithURL: fileURL];
     interactionController.delegate = interactionDelegate;
     return interactionController;
}

注意: 重定向到instagram应用后,您将无法返回到您的应用。您必须再次打开您的应用

这里下载源

2020-07-07