8

在我的应用程序中,我在 Instagram 上分享了一张图片。它在我的应用程序中运行良好。

我正在使用以下代码。

@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]];
//    NSURL *igImageHookFile = [[NSURL alloc] initWithString:[[NSString alloc] initWithFormat:@"file://%@", screenshot]];

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 以共享图像,它运行良好。

但是是否有可能我可以检查用户是否已成功共享它?

意味着当用户成功共享图像时,我想在我的数据库中执行一些操作。

我怎样才能做到这一点?

4

3 回答 3

14

我得到了我的答案。刚刚添加了一行,它对我有用。

self.dic.annotation = [NSDictionary dictionaryWithObject:@"Here Give what you want to share" forKey:@"InstagramCaption"];

谢谢...

于 2013-04-02T11:05:29.390 回答
3

它也记录在http://instagram.com/developer/iphone-hooks/的官方文档中

要在您的照片中包含预填充的标题,您可以将文档交互请求上的注释属性设置为包含键“InstagramCaption”下的 NSString 的 NSDictionary。注意:此功能将在 Instagram 2.1 及更高版本上可用。

于 2013-12-04T15:56:35.100 回答
2

您不再被允许与 Instagram 或 Facebook 共享预填充文本。

只有图像/屏幕截图可以通过 UIDocumentInteractionController 共享。

于 2016-01-02T09:23:13.867 回答