Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone Post image不再使用新的iOS Facebook SDK_Iphone_Ios_Facebook_Ios7 - Fatal编程技术网

Iphone Post image不再使用新的iOS Facebook SDK

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

我添加的函数在iOS6上运行良好,但在iOS7上,我必须更新Facebook SDK,因为旧版本中的id和setId被标记为非公共且未经验证。 因此,我用新的SDK替换了旧的SDK,但是,当然,post映像不再工作(因为id肯定是未知的)。 我有这个:

[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控制器…你能检查一下你的权限数组部分吗,一切都好吗?