关于友盟Facebook分享的问题
2017-03-06 本文已影响0人
不想写昵称
使用cocoapods添加库文件
pod 'UMengUShare/Social/Facebook'
AppDelegate didFinishLaunchingWithOptions添加代码
[[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_Facebook appKey:FB_APP_KEY appSecret:nil redirectURL:@"http://www.umeng.com/social"];
FB_APP_KEY就是facebook开发者平台的应用ID
登录方法调用
[[UMSocialManager defaultManager] getUserInfoWithPlatform:UMSocialPlatformType_Facebook currentViewController:nil completion:^(id result, NSError *error) {
if (error) {
} else {
UMSocialUserInfoResponse *resp = result;
// 授权信息
NSLog(@"Facebook uid: %@", resp.uid);
NSLog(@"Facebook accessToken: %@", resp.accessToken);
NSLog(@"Facebook expiration: %@", resp.expiration);
// 用户信息
NSLog(@"Facebook name: %@", resp.name);
// 第三方平台SDK源数据
NSLog(@"Facebook originalResponse: %@", resp.originalResponse);
}
}];
注:该方法登录一次后就不需要再次唤醒facebook重新授权,如需取消授权调用如下方法
[[UMSocialManager defaultManager] cancelAuthWithPlatform:UMSocialPlatformType_Facebook completion:^(id result, NSError *error) {
//do something
}];
Xcode相关配置
// url scheme添加
fb+FB_APP_KEY(如fb311237102478575)
// info.plist中添加
<key>FacebookAppID</key>
<string>your app id</string>
<key>FacebookDisplayName</key>
<string>your app name</string>
<key>LSApplicationQueriesSchemes</key> // 应用白名单,添加下面四个即可
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
遇到的问题
点击登录时唤醒的facebook登录网页始终显示已授权改应用,无法切换账号。
解决方法:在设置中清空safari cookie即可。