How to use Facebook SDK in iOS
Ngày nay mạng xã hội Facebook đã trở nên phổ biến trên toàn thế giới, số lượng người dùng Facebook đã vượt quá sự mong đợi ban đầu. Đến nay, việc tích hợp Facebook vào các phần mềm giúp cho việc đăng nhập, chia sẻ, like... trở nên thuận tiện và dễ dàng hơn. Bài viết sau đây sẽ giới thiệu các bạn ...
Ngày nay mạng xã hội Facebook đã trở nên phổ biến trên toàn thế giới, số lượng người dùng Facebook đã vượt quá sự mong đợi ban đầu. Đến nay, việc tích hợp Facebook vào các phần mềm giúp cho việc đăng nhập, chia sẻ, like... trở nên thuận tiện và dễ dàng hơn.
Bài viết sau đây sẽ giới thiệu các bạn ví dụ tích hợp Facebook SDK vào ứng dụng trên nền tảng iOS.
2.1 Download SDK bản mới nhất
Bạn có thể download SDK Facebook tại link sau đây: https://developers.facebook.com/resources/facebook-ios-sdk-current.pkg
Hoặc bạn có thể lấy source SDK Facebook từ GitHub, nếu bạn đã có tài khoản Git, bạn có thể local repository bằng cách clone source về máy cảu bạn:
git clone git://github.com/facebook/facebook-ios-sdk.git
Sau đó, nhớ build SDK từ source trước khi bạn compile hoặc chạy một app bất kỳ:
./scripts/build_framework.sh
Bạn có thể cài SDK thông qua Cocoa Pod
pod "FBSDKCoreKit" pod "FBSDKLoginKit" pod "FBSDKShareKit"
2.2 Tạo Facebook App
Nếu bạn chưa đăng ký một APP ID cho Facebook thì bạn phải đăng ký
Download SDK về máy:
Mở thư mục Facebook SDK vừa download về, kéo thả FBSDKCoreKit.Framework, FBSDKLoginKit.Framework, FBSDKShareKit.Framework vào XCode Projects Framework.
Nhớ không tích phần "Copy into destination group folder".
Mở file info.plist và cấu hình như sau:
- Trong file .plist tạo một key có tên là FacebookAppID kiểu String, sau đó copy APP ID vào giá trị của key.
- Tiếp tục tạo một key có tên FacebookDisplayName kiểu String, copy tên app (đã tạo trước đó trên Facebook app)
- Tiếp tục tạo key có tên URL types kiểu Dictionary, chỉ gồm 1 item duy nhất. Tạo trong item key có tên URL Schemes kiểu Array, chọn kiểu cho item đầu tiên String.
Nhập bundle ID của app vào:
2.2 Sử dụng Facebook SDK
Kiểm tra cài đặt và mở app
Trong file AppDelegate.m:
- (void)applicationDidBecomeActive:(UIApplication *)application { [FBSDKAppEvents activateApp]; } - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { return [[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions]; } - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return [[FBSDKApplicationDelegate sharedInstance] application:application openURL:url sourceApplication:sourceApplication annotation:annotation]; }
Login Facebook
Trong file viewControler của bạn
Trong hàm viewDidLoad:
FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc] init]; loginButton.center = self.view.center; [self.view addSubview:loginButton];
Trong file AppDelegate.m :
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return [[FBSDKApplicationDelegate sharedInstance] application:application openURL:url sourceApplication:sourceApplication annotation:annotation]; }
Sử dụng Share Dialog
Share link
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init]; content.contentURL = [NSURL URLWithString:@"YOUR LINK HERE"];
- contentURL - link chia sẻ
- contentTitle - tiêu đề của nội dung được chia sẻ
- imageURL - url của ảnh thumbnail được hiển thị sau khi post
- contentDescription - miêu tả nội dung, thường từ 2-4 câu
Share photo
FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init]; photo.image = image; photo.userGenerated = YES; FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init]; content.photos = @[photo];
- Ảnh phải có dung lượng nhỏ hơn 12MB
- Bạn phải cài app của Facebook phiên bản lớn hơn 7.0
Share Video
FBSDKShareVideo *video = [[FBSDKShareVideo alloc] init]; video.videoURL = videoURL; FBSDKShareVideoContent *content = [[FBSDKShareVideoContent alloc] init]; content.video = video;
- Video phải có dung lượng nhở hơn 12MB.
- Bạn phải cài app Facebook phiên bản lớn hơn 26.0.
Ngoài việc chia sẻ, đăng nhập, Facbook SDK còn cung cấp các api khả dụng cho việc nhắn tin (messenger), like một nội dung đã được chia sẻ, custom dialog chia sẻ v.v. Tuỳ vào mục đích sử dụng hãy lựa chọn cho mình phương thức. Chúc bạn thành công.