【发布时间】:2013-05-15 17:16:51
【问题描述】:
我有以下课程:
.h 文件:
#import <Foundation/Foundation.h>
@interface CHTInstagramSharer : NSObject<UIDocumentInteractionControllerDelegate>
@property (nonatomic, retain) UIDocumentInteractionController *dic;
-(void) sharePic:(UIImage *)image;
@end
.m 文件
#import "CHTInstagramSharer.h"
#import <UIKit/UIKit.h>
#import "BaseController.h"
@implementation CHTInstagramSharer
-(void) sharePic:(UIImage *)image{
NSString * jpgPath = [Utils saveImage:image toFile:@"cover.igo"];
NSURL *url = [NSURL fileURLWithPath:jpgPath];
self.dic = [UIDocumentInteractionController interactionControllerWithURL: url];
self.dic.UTI = @"com.instagram.exclusivegram";
self.dic.delegate = self;
self.dic.annotation = [NSDictionary dictionaryWithObject:@"Caption Test" forKey:@"InstagramCaption"];
[self.dic presentOpenInMenuFromRect:CGRectMake(0, 0, 320, 44) inView:[BaseController sharedInstance].view animated: YES ];
}
@end
它为控制器提供了“在 Instagram 中打开”选项,但是当我点击该选项时,应用程序崩溃了。
知道为什么吗?
补充信息,当我在调试器中查看 url 时,我得到: 文件://localhost/var/mobile/Applications/53435781-3BAB-4B02-A80C-FC088F696AE8/Library/Caches/cover.igo
当我查看堆栈跟踪时,[_UIOpenWithAppActivity performActivity] 似乎发生了崩溃。
【问题讨论】:
-
什么是崩溃?未捕获的异常?访问不方便?越界访问?
-
查看我的更新回复,您应该可以复制并粘贴我创建的方法并在您的应用中使用它。希望对您有所帮助。
-
访问不正确。我发现了问题,只是共享对象的释放太早了。
-
我似乎无法将注释转移到 Instagram - 标题只是空的。有人有这方面的经验吗?
标签: ios objective-c instagram