Регистрация пользователя в приложении через соц сети (facebook, vk, instagram)


#1

Добрый вечер, господа.
Кто-нибудь прикручивал регистрацию пользователя приложения через социальные сети, такие как facebook, vk, instagram?

Если ресурсы, скиньте ссылки или возможно есть код, где все это реализовано.
В общем буду благодарен любой помощи.


#2

Если у вас зарегистрированные пользователи хранятся где нибудь на сервере, то вам помимо всего прочего на сервере нужно организовать проверку токена. В вашем приложении пользователь вводит данные от фейсбука (к примеру), далее ваше приложение отправляет эти данные в фейсбук (через его API) в ответ получает токен, который вы отправляете к себе на сервер и там его проверяете, в случае успеха регистрируете пользователя.

Если же вам просто нужны данные аккаунта, то копайте в сторону social framework, для фейсбука достаточно что то вроде этого:


import Social
import Accounts

let accountStore = ACAccountStore()
let accountType = accountStore.accountTypeWithAccountTypeIdentifier(ACAccountTypeIdentifierFacebook)

accountStore.requestAccessToAccountsWithType(accountType, options: [ACFacebookAppIdKey: "FacebookKEY", ACFacebookPermissionsKey: ["email"]]) { completion, error in
    if let url = NSURL(string: "https://graph.facebook.com/me"), let facebookAccount = accountStore.accountsWithAccountType(accountType).last as? ACAccount {
        let request = SLRequest(forServiceType: SLServiceTypeFacebook, requestMethod: SLRequestMethod.GET, URL: url, parameters: nil)
        request.account = facebookAccount
        request.performRequestWithHandler { data, response, error in
            do {
                if let json = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? [String: AnyObject] {
                    print(json)
                }
            } catch {
                print(error)
            }
        }
    }
}

#3

Привет, Саша.
Спасибо, сейчас попробую.

Для VK нашел SwiftyVK.

Осталось найти для instagram.


#4

может еще кому-то пригодиться…FSSDKSocialCore