测试已测试 | ✗ |
语言语言 | Obj-CObjective C |
许可证 | MIT |
发布日期上次发布 | 2014年12月 |
由 未认证 维护。
依赖关系 | |
Facebook-iOS-SDK | = 3.2.1 |
AFNetworking | = 1.2.0 |
MBProgressHUD | = 0.6 |
IdentityManager 维护每个 OAuth 平台上的多个账户,包括对 Facebook、Twitter 和 LinkedIn 的支持。但您可以注册尽可能多的 OAuth 1.0a 服务。
此项目受以下项目的启发:
IdentityManager 需要 FacebookSDK.framework(v3.1.1) 和 AFNetworking。
此外,最好是使用 LLVM4.0 和 xCode4.5 进行编译。如果您使用的是较低版本,尝试添加我的子模块 ObjectiveCLiterals
可以通过指定命名空间和最大插槽数来创建 IdentityManager
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
identityManager = [[IdentityManager alloc] initWithPrefix:@"VH" maximumUserSlots:7];
...
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [identityManager handleOpenURL:url];
}
要完全与 Facebook 一起使用,需要将 FacebookAppID
和正确的 URL Types
添加到 info.plist
中,并使用以下方式注册:
[identityManager registerSocialSessionsClass:[FacebookSessions class]];
如果只是想获取 id
和 name
,可以使用 FaceboookSessions
启动新的请求,但您可以使用 _SOCIALSESSIONS_FACEBOOK_TOKEN_ONLY_
停止发送请求。
对于 Twitter 和 LinkedIn,需要使用您提供的 app_key
添加 TwitterAppID
和 LinkedInAppID
,并将 tw[app_key]
和 li[app_key]
添加为 URL Types
,并使用以下方式注册:
// you probably want to add these to your prefix.pch file.
#define TWITTER_SECRET @"xxxxx"
#define LINKEDIN_SECRET @"xxxxx"
[identityManager registerSocialSessionsClass:[TwitterSessions class]];
[identityManager registerSocialSessionsClass:[LinkedInSessions class]];
最后,启动注册如下
[identityManager authenticateIdentityWithServiceIdentifier:[TwitterSessions socialIdentifier] completion:^(BOOL success) {
NSLog(@"done!");
}];