gpt4 book ai didi

ios - 我在iOS Facebook SDK中收到错误“ErrorReauthorizeFailedReasonSessionClosed”

转载 作者:行者123 更新时间:2023-12-01 16:33:24 26 4
gpt4 key购买 nike

我在iOS应用程序上使用facebook sdk登录和分享故事。

在Facebook上分享故事功能正常,但今天不起作用。我不知道为什么它不起作用,因为没有代码更改与该功能有关。

以下是请求publish_actions权限的代码。

// Request publish_actions
[FBSession.activeSession requestNewPublishPermissions:[NSArray arrayWithObject:@"publish_actions"]
defaultAudience:FBSessionDefaultAudienceFriends
completionHandler:^(FBSession *session, NSError *error) {
if (!error) {
if ([FBSession.activeSession.permissions indexOfObject:@"publish_actions"] == NSNotFound) {
// Permission not granted, tell the user we will not publish
} else {
// Permission granted
}
} else {
NSLog(@"DEBUG: error = %@", error);
// There was an error, handle it
// See https://developers.facebook.com/docs/ios/errors/
}
}];

错误消息如下,

Domain=com.facebook.sdk Code=2 "The operation couldn’t be completed. com.facebook.sdk:ErrorReauthorizeFailedReasonSessionClosed"
UserInfo=0xXXXXXXXXX {
com.facebook.sdk:ErrorLoginFailedReason=
com.facebook.sdk:ErrorReauthorizeFailedReasonSessionClosed,
NSLocalizedFailureReason=
com.facebook.sdk:ErrorReauthorizeFailedReasonSessionClosed,
com.facebook.sdk:ErrorSessionKey= ... >
}


如果有人知道这一点,请帮助我。

** Facebook SDK版本为3.18,并且publish_actions项目已在developer.facebook.com中获得批准

最佳答案

您可以使用 FBSDKAccessToken

 if ([[FBSDKAccessToken currentAccessToken] hasGranted:@"publish_actions"]) {

[self doShare];
} else {
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithPublishPermissions:@[@"publish_actions"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if (error) {
// Process error
} else if (result.isCancelled) {
// Handle cancellations
} else {
// If you ask for multiple permissions at once, you
// should check if specific permissions missing
if ([result.grantedPermissions containsObject:@"publish_actions"]) {
// Do work

[self doShare];

}
}
}];
}

在哪里共享

-(void)doShare {
NSString *url = [NSString stringWithFormat:@"http://example.com/locations/%d",1];
NSDictionary *properties = @{

@"your action" :url
};
[[[FBSDKGraphRequest alloc]
initWithGraphPath:@"me/example-staging:something"
parameters: properties
HTTPMethod:@"POST"]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error) {
// NSLog(@"Post id:%@", result[@"id"]);

}
}];

关于ios - 我在iOS Facebook SDK中收到错误“ErrorReauthorizeFailedReasonSessionClosed”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30478013/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com