Ank*_*ita 1 facebook facebook-graph-api ios8
我正在使用Facebook-iOS-SDK(4.0.1)使用自定义按钮登录.我正在实现以下代码
- (IBAction)fbButtonClicked:(UIButton *)sender {
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"email"] 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:@"email"]) {
// Do work
if ([FBSDKAccessToken currentAccessToken]) {
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me/friends" parameters:nil]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result2, NSError *error) {
if (!error) {
NSLog(@"fetched user:%@", result2);
}
}];
}
}
}
}];
Run Code Online (Sandbox Code Playgroud)
}
如果我在设备上安装了Facebook应用程序,那么代码工作正常.当我没有安装Facebook应用程序时,Facebook将在浏览器中打开.在这里,'result.isCancelled'设置为'YES',我没有得到所需的结果.
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
}
Run Code Online (Sandbox Code Playgroud)
在appDelegate.m中是必需的
| 归档时间: |
|
| 查看次数: |
1622 次 |
| 最近记录: |