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 を開いていますが、問題なく動作します。

しかし、ユーザーが正常に共有したかどうかを確認できますか?

ユーザーが画像を正常に共有したときに、DB で何らかのアクションを実行したいということです。

これどうやってするの?

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 に答える