Iphone Post image不再使用新的iOS Facebook SDK
我添加的函数在iOS6上运行良好,但在iOS7上,我必须更新Facebook SDK,因为旧版本中的id和setId被标记为非公共且未经验证。 因此,我用新的SDK替换了旧的SDK,但是,当然,post映像不再工作(因为id肯定是未知的)。 我有这个:Iphone Post image不再使用新的iOS Facebook SDK,iphone,ios,facebook,ios7,Iphone,Ios,Facebook,Ios7,我添加的函数在iOS6上运行良好,但在iOS7上,我必须更新Facebook SDK,因为旧版本中的id和setId被标记为非公共且未经验证。 因此,我用新的SDK替换了旧的SDK,但是,当然,post映像不再工作(因为id肯定是未知的)。 我有这个: [params setObject:textViewMessageFacebook.text forKey:@"message"]; [params setObject:UIImagePNGRepresentation(screenshot) f
[params setObject:textViewMessageFacebook.text forKey:@"message"];
[params setObject:UIImagePNGRepresentation(screenshot) forKey:@"picture"];
[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"%@/photos", idAmiS]
parameters:params
HTTPMethod:@"POST"
completionHandler:^(FBRequestConnection *connection,
id result,
NSError *error)
但我不知道如何纠正它让它工作。。。
感谢使用SlComposer控制器在facebook上发布图像 1) 首先,将Social framework和Account framewok添加到项目中,然后尝试以下代码 把这段代码写在你想写的地方
{
ACAccountType *facebookTypeAccount = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
[accountStore requestAccessToAccountsWithType:facebookTypeAccount
options:@{ACFacebookAppIdKey: @"131740927031850", ACFacebookPermissionsKey: @[@"email"]}
completion:^(BOOL granted, NSError *error) {
if(granted){
NSArray *accounts = [accountStore accountsWithAccountType:facebookTypeAccount];
_facebookAccount = [accounts lastObject];
ACAccountCredential *fbCredential = [_facebookAccount credential];
accessToken = [fbCredential oauthToken];
NSLog(@"Facebook Access Token: %@", accessToken);
NSLog(@"Success");
[self facebook];
}else{
NSLog(@"Fail");
NSLog(@"Error: %@", error);
}
}];
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
[tweetSheet setInitialText:@"posting from my own app! :)"];
[tweetSheet addURL:[NSURL URLWithString:@"www.xyz.com"]];
// Here you add the image
[tweetSheet addImage:[UIImage imageNamed:@"yourimage.png"]];
[self presentViewController:tweetSheet animated:YES completion:nil];
}
else
{
UIAlertView *alertView = [[UIAlertView alloc]
initWithTitle:@"Sorry"
message:@"You can't send a tweet right now, make sure your device has an internet connection and you have at least one Twitter account setup"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alertView show];
}
}
- (void)facebook
{
NSURL *meurl = [NSURL URLWithString:@"https://graph.facebook.com/me"];
NSLog(@"URl:-%@",meurl);
SLRequest *merequest = [SLRequest requestForServiceType:SLServiceTypeFacebook
requestMethod:SLRequestMethodGET
URL:meurl
parameters:nil];
merequest.account = _facebookAccount;
[merequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
NSString *meDataString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
NSLog(@"Parsed Data:-%@", meDataString);
}];
}
使用SlCompser控制器…你能检查一下你的权限数组部分吗,一切都好吗?