Facebook SDK для iOS: начало работы
Facebook SDK для iOS позволяет без труда интегрировать приложение iOS с Facebook. Этот инструмент предлагает целый ряд возможностей.
- «Вход через Facebook»: авторизация с использованием учетных данных Facebook.
- Диалоги «Поделиться» и «Отправить»: люди могут делиться материалами вашего приложения на Facebook.
- События в приложении: регистрация событий в приложении.
- API Graph: чтение и запись в API Graph.
Настроить приложение для использования Facebook SDK можно двумя способами. Если вы еще не зарегистрировали приложение на Facebook, воспользуйтесь инструментом «Быстрое начало работы». Другой вариант: использовать приведенные ниже инструкции по настройке вручную.
Быстрое начало работы для iOSШаг 1. Настройте параметры приложения Facebook для iOS
- Откройте Панель приложений Facebook. Для этого нажмите кнопку ниже и выберите приложение.
- Выберите Настройки в левом навигационном меню.
- Нажмите Добавить платформу в нижней части страницы и выберите iOS.
- Найдите свой идентификатор комплекта в Xcode и скопируйте его в буфер обмена.
- Вернитесь в Панель приложений и вставьте идентификатор в поле ID сборки.
- Активируйте Единый вход.
- Нажмите Сохранить изменения в нижней части окна Панели приложений.
Открыть Панель приложений Facebook


Шаг 2. Скачайте Facebook SDK для iOS
- Нажмите кнопку ниже, чтобы скачать SDK.
Распакуйте архив в папку
~/Documents/FacebookSDK.
Шаг 3. Добавьте SDK в проект
Чтобы добавить SDK в Xcode:
- Откройте проект Xcode своего приложения.
- Если у вас нет группы Frameworks в проекте, создайте ее.
- Откройте
~/Documents/FacebookSDKс помощью Finder. - Перетащите файлы Bolts.framework, FBSDKCoreKit.framework, FBSDKLoginKit.framework и FBSDKShareKit.framework в группу FrameworksProject Navigator Xcode. В появившемся диалоговом окне выберите Create groups for any added folders и отмените выбор Copy items into destination group's folder. Это позволяет создать ссылку на место установки SDK, вместо того чтобы копировать SDK в приложение.
- Откройте вкладку Build Settings в своем проекте.
- Добавьте
~/Documents/FacebookSDKв настройку проекта Framework Search Paths.
При использовании Facebook SDK события в приложения автоматически регистрируются и собираются для Facebook Analytics, только если вы не выключите автоматическую регистрацию событий. Подробнее о том, какая информация собирается и как выключить автоматическую регистрацию событий, см. Автоматическая регистрация событий в приложении.
Шаг 4. Настройте проект Xcode
- В Xcode нажмите правой кнопкой мыши файл .plist проекта и выберите Open As -> Source Code.
Вставьте сниппет XML в основной текст файла перед конечным элементом
</dict>.- Замените fb{your-app-id} на ID своего приложения Facebook с префиксом fb. Например, fb123456. Найти ID приложения можно в Панели приложений Facebook.
- В качестве {your-app-id} укажите ID своего приложения.
- Замените {your-app-name} на отображаемое название, которое вы указали в Панели приложений.
- В качестве {human-readable reason for photo access} укажите причину, по которой вашему приложению нужен доступ к фото.
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb{your-app-id}</string>
</array>
</dict>
</array>
<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>
<key>NSPhotoLibraryUsageDescription</key>
<string>{human-readable reason for photo access}</string>Шаг 5. Подключите делегат приложения
Чтобы обрабатывать результаты действий, требующих перехода в нативное приложение Facebook или Safari, например «Вход через Facebook» или диалоги Facebook, подключите класс AppDelegate к объекту FBSDKApplicationDelegate. Чтобы сделать это, добавьте следующий код к файлу AppDelegate.m.
// AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
// Add any custom logic here.
return YES;
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
BOOL handled = [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]
];
// Add any custom logic here.
return handled;
}Примечание. В интеграции -application:openURL:sourceApplication:annotation:, показанной выше, вызов к FBSDKApplicationDelegate требуется для корректной работы отсроченного перехода по диплинку.
Шаг 6. Добавьте События в приложении
Теперь, когда SDK установлен и настроен, вы можете проверить его, добавив события в свое приложение. События помогают понять, как люди используют ваше приложение. Вы можете регистрировать 14 стандартных событий, таких как добавление в корзину в приложении для электронной торговли или достижение уровня в игре. Кроме того, вы можете создать индивидуально настроенное событие.
Регистрация активаций приложения
Чтобы узнать, сколько людей используют ваше приложение, регистрируйте активации приложения. Для этого добавьте следующий код к файлу AppDelegate.m.
// AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}Чтобы проверить регистрацию событий, сделайте следующее:
- Скомпилируйте и запустите свое приложение.
- Выберите свое приложение в панели Analytics for Apps.
- В меню слева выберите Действия -> События.
Открыть панель Analytics for Apps
Активации появятся в панели событий не сразу. Если вы не видите активаций, подождите минуту и обновите страницу.
Дальнейшие действия
Инструкции по интеграции Событий и других продуктов Facebook в приложение можно найти в следующих руководствах.
Публикация материалов в iOSДобавление «Входа через Facebook»Добавьте События в приложенииИспользование API Graph для iOSКнопка «Нравится» для iOSРасширенная конфигурация