这是一个用于 iOS 的 Facebook SDK Facade,使用 Blocks。SFSocialFacebook 是 Facebook SDK for iOS 的分支,提供了更简单、更干净的使用方式。
dependency 'SFSocialFacebook', '~>1.2'
将所有文件从 src/
目录复制到您的项目中,除了 .xcodeproj
和 .pch
文件。
根据以下截图配置您项目中的 Info.plist
中的 URL Scheme
和您项目的 AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSArray *permissions = [[NSArray alloc] initWithObjects:@"create_event", @"user_events", @"rsvp_event", @"publish_stream", nil];
_socialFacebook = [SFSocialFacebook sharedInstanceWithAppId:@"YOUR_APP_ID" appSecret:@"YOUR_APP_SECRET" urlSchemeSuffix:nil andPermissions:permissions];
[permissions release];
...
}
// Pre 4.2 support
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
return [_socialFacebook handleOpenURL:url];
}
// For 4.2+ support
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return [_socialFacebook handleOpenURL:url];
}
发布示例
SFSimplePost *post = [[SFSimplePost alloc] init];
post.name = @"I'm using the I.ndigo Test App for iOS app";
post.caption = @"I.ndigo Test App for iOS.";
post.postDescription = @"Check out I.ndigo Test App for iOS to learn how you can make your iOS apps social using Facebook Platform.";
post.link = @"http://www.i.ndigo.com.br/";
post.picture = @"https://fbcdn-photos-a.akamaihd.net/photos-ak-snc1/v85006/197/198801296855729/app_1_198801296855729_3543.gif";
post.actionName = @"I.ndigo Website";
post.actionLink = @"http://i.ndigo.com.br";
post.message = @"Message created by App";
[[SFSocialFacebook sharedInstance] publishPost:post success:^(NSString *postId) {
// Success callback
} failure:^(NSError *error) {
// Error callback
} cancel:^{
// Cancel callback
}];
[post release];
动态示例
[[SFSocialFacebook sharedInstance] profileFeed:_profileId
pageSize:5
needsLogin:_needsLogin
success:^(NSArray *posts, NSString *nextPageUrl) {
// Success callback
}
failure:^(NSError *error) {
// Error callback
}
cancel:^{
// Cancel callback
}];
在 sample/SFSocialFacebookExample/SFSocialFacebookExample.xcodeproj
中有一个使用 SFSocialFacebook 的 XCode 示例项目。
SFSocialFacebook 采用 Apache License, Version 2.0 许可。
版权所有 2012 I.ndigo
根据 Apache License, Version 2.0 许可协议许可(以下简称“许可证”);除非遵守许可证,否则不得使用此文件。您可以在以下网址获取许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或经书面同意,否则在许可证下分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可证的特定语言、权限和限制,请参阅许可证。