我是iOS开发的新手。我想将图像上传到Facebook页面。当图像从Camera.Phen拿起来,我写了一个代码如下,但我得到一个错误“FBSession必须指定调用这个端点”。请给我解决方案。必须为在iOS中调用此端点指定一个打开的FBSession
我的代码等作为
-(IBAction)cameraButtonPressed:(id)sender
{
if (FBSession.activeSession.isOpen)
{
UIImage *uploadImage=[UIImage imageNamed:@"2.png"];
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:accesstoken, @"CAACEdEose0cBAAFiJ51qowOOBfOcobm1E3v1ZBZCNYBSZAyspbQCXPUZCdZC620bRWYvChxGd96ZAOSMNyRZA9TYd9teQ9Q1m67wKx0n66YjTiYZBxczKIZB7t3tuLO5RYsNbZBfGweZCenMXRF7xOBE6DQ6450nmB0hRJzI8PrT18WZAfU878GhNryp5Vw4Up3jGZCwPWmuMxDZAoZAXVosyZBNKQ6i",
postingString, @"message",uploadImage,@"source",
nil];
FBRequest *requestToPost = [[FBRequest alloc] initWithSession:nil
graphPath:@"/me/feed"
parameters:params
HTTPMethod:@"POST"];
FBRequestConnection *requestToPostConnection = [[FBRequestConnection alloc] init];
[requestToPostConnection addRequest:requestToPost completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
{
NSLog(@"facebook result >> %@", result);
}];
[requestToPostConnection start];
}
else
{
NSArray *permissions = [[NSArray alloc] initWithObjects:
@"user_likes",
@"read_stream",
@"publish_actions",
nil];
FBSession *session = [[FBSession alloc] initWithPermissions:permissions];
[FBSession setActiveSession:session];
}
if([FBSession openActiveSessionWithAllowLoginUI:NO])
{
UIImage *uploadImage=[UIImage imageNamed:@"2.png"];
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:accesstoken, @"CAACEdEose0cBAAFiJ51qowOOBfOcobm1E3v1ZBZCNYBSZAyspbQCXPUZCdZC620bRWYvChxGd96ZAOSMNyRZA9TYd9teQ9Q1m67wKx0n66YjTiYZBxczKIZB7t3tuLO5RYsNbZBfGweZCenMXRF7xOBE6DQ6450nmB0hRJzI8PrT18WZAfU878GhNryp5Vw4Up3jGZCwPWmuMxDZAoZAXVosyZBNKQ6i",
postingString, @"message",uploadImage,@"source",
nil];
FBRequest *requestToPost = [[FBRequest alloc] initWithSession:nil
graphPath:@"/me/feed"
parameters:params
HTTPMethod:@"POST"];
FBRequestConnection *requestToPostConnection = [[FBRequestConnection alloc] init];
[requestToPostConnection addRequest:requestToPost completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
{
NSLog(@"facebook result >> %@", result);
}];
[requestToPostConnection start];
}
else
{
NSLog(@"Nothing to DO BYE");
}
这里我的plist文件等作为
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLName</key>
<string></string>
<key>CFBundleURLSchemes</key>
<array>
<string>fb74549074886xxxx</string>
</array>
</dict>
</array>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>FacebookAppID</key>
<string>7454907xxxxxx</string>
<key>FacebookDisplayName</key>
<string>CelebrateChristmas</string>
嗨,这是KARTHIK终于ü使用我的代码,任何方式好,在这里你的问题是检查你的FBSession是否开放 – 2014-12-06 04:34:45
@ Anbu.Karthik thnx bro最后你的代码对我有用。但我不知道锄头检查FBSession是否开放。但我可以从R&D做到。然后在这里回复你任何问题都会发生o不是。 – 2014-12-06 04:38:58
k显示您的完整错误代码... – 2014-12-06 04:42:26