我在ASIFormDataRequest中苦苦挣扎。
我想在iphone的facebook上上传一张照片,以便在我的编程中使用ASIFormDataRequest,但它给出了像_OBJC_CLASS_$_ASIFormDataRequest这样的错误,引用自:
我不明白它的意思,我怎么处理它?
我上传照片的代码如下:
-(void)postphoto:(id)sender
{
UISegmentedControl* _segControl;
//ASIFormDataRequest *request;
UIImageView *_imageView = [UIImageView alloc];// initWithImage: image];
NSString *likeString;
NSString *filePath = nil;
if (_imageView.image == [UIImage imageNamed:@"angelina.jpg"]) {
filePath = [[NSBundle mainBundle] pathForResource:@"angelina" ofType:@"jpg"];
likeString = @"babe";
} else if (_imageView.image == [UIImage imageNamed:@"depp.jpg"]) {
filePath = [[NSBundle mainBundle] pathForResource:@"depp" ofType:@"jpg"];
likeString = @"dude";
} else if (_imageView.image == [UIImage imageNamed:@"maltese.jpg"]) {
filePath = [[NSBundle mainBundle] pathForResource:@"maltese" ofType:@"jpg"];
likeString = @"puppy";
}
if (filePath == nil) return;
NSString *adjectiveString;
if (_segControl.selectedSegmentIndex == 0) {
adjectiveString = @"cute";
} else {
adjectiveString = @"ugly";
}
NSString *message = [NSString stringWithFormat:@"I think this is a %@ %@!", adjectiveString, likeString];
NSURL *url = [NSURL URLWithString:@"https://graph.facebook.com/me/photos"];
//[ self setRequest:[ASIFormDataRequest requestWithURL:url]];
request = [ASIFormDataRequest requestWithURL:url];
[request addFile:filePath forKey:@"file"];
[request setPostValue:message forKey:@"message"];
//[request setPostValue:_accessToken forKey:@"access_token"];
[request setDidFinishSelector:@selector(sendToPhotosFinished:)];
[request setDelegate:self];
[request startAsynchronous];
}我还添加了两个文件ASIHTTPRequest.h和ASIFormDataRequest.h,并将其导入到我编写代码的位置
我还添加了CFNetwork、Foundation等框架
请帮我解决这个错误。
发布于 2012-03-22 08:20:54
今天我也遇到了类似的问题。如果您使用的是iOS 5,请确保ASIHTTPRequest中使用的所有文件(扩展名为.m )都包含在项目的编译源代码中。您可以通过以下方式进行检查:项目->目标->构建阶段->编译源。
如果是这种情况,请尝试添加所有文件并重新编译。同样,如果你使用的是iOS5,这次会抛出更多的错误。所有这些都与ARC有关。要再次解决这个问题,请转到编译源,选择所有库文件(只选择未使用ios5 sdk的文件),并将它们标记为“-fno-objc-arc.”。这将关闭所选文件上的ARC。
发布于 2011-04-26 13:27:42
你必须将你的二进制文件链接到也有ASIFormDataRequest的库中。
https://stackoverflow.com/questions/5786285
复制相似问题