gpt4 book ai didi

iphone - iOS facebook SDK - 对话框 - 移动按钮

转载 作者:行者123 更新时间:2023-11-28 20:45:33 24 4
gpt4 key购买 nike

在我的应用程序中,用户可以发布指向他的 Facebook 墙的链接。但是,我不能使用 SDK 中的“授权”方法来登录用户,因为 facebook 应用程序明确要求所有(基本)权限对我的客户来说是不行的。因此,我立即使用 Facebook 对话框。

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: @"http://www.google.at", @"link", nil];

[self.facebook dialog:@"feed" andParams:params andDelegate:self];

这工作正常,但在用户可以发布到他的墙上时登录后,发布和取消按钮总是移出屏幕(见屏幕截图)。当我向下滚动时,按钮立即再次移出屏幕。成功登录后不会发生这种情况。有谁知道如何将按钮保留在屏幕上?否则用户无法发布链接。

我找到了这个解决方案,但至少对我来说它不起作用:https://github.com/facebook/facebook-ios-sdk/issues/329

screenshot http://dl.dropbox.com/u/12018803/facebookPosting.png

最佳答案

我遇到了同样的问题并且浪费了很多时间,除了找到解决方法外没有找到解决方案。

我有三种方法

- (void) openMyFacebook
- (void) fbDidLogin
- (void) dialogFacebook

我调用 openMyFacebook

- (void) openMyFacebook,我分配 Facebook 看看是否有已在 NSUserDefaults 中存储 key 如果不是,我调用 [facebook authorize:nil delegate:self];在委托(delegate) - (void) fbDidLogin 我存储 key (在 facbook 示例中相同)。然后就是诀窍了。

发布 Facebook

[facebook release];
facebook = nil;

并启动 - (void) openMyFacebook再次使用存储的 key 。

完美运行。

- (void) openMyFacebook {

if (facebook == nil) {

facebook = [[Facebook alloc] initWithAppId:@"xxxxxxxxxx"];
}

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"]
&& [defaults objectForKey:@"FBExpirationDateKey"]) {
facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
}

if (![facebook isSessionValid]) {
[facebook authorize:nil delegate:self];
}
else {

[self dialogFacebook];
}

}

- (void)fbDidLogin {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];

//release!!!!
[facebook release];
facebook = nil;
//and start again
[self openMyFacebook];
}

- (void) dialogFacebook {

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
kAppId, @"app_id",
linkextern, @"link",
facebookImageUrlString, @"picture",
name, @"name",

@" ", @"message",
nil];

[facebook dialog:@"feed" andParams:params andDelegate:self];
}

关于iphone - iOS facebook SDK - 对话框 - 移动按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6583495/

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