Facebook第三方登錄-iOS

iOS接入Facebook第三方登錄
開(kāi)發(fā)語(yǔ)言:Swift
官方文檔

第一步 設(shè)置開(kāi)發(fā)環(huán)境
  • 按照官方文檔指引,創(chuàng)建應(yīng)用
  • 接入Facebook SDK
    SDK接入可以選擇cocoapods或者直接下載

第二步 配置info.plist
  • 完成info.plist列表配置裤纹,info.plist作為源碼打開(kāi)授翻,復(fù)制以下代碼
// 000000000為自己應(yīng)用的FacebookAppID與URL Schemes
//在官方文檔內(nèi)可生成
<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>fb000000000</string> </array> </dict> </array> <key>FacebookAppID</key> <string>000000000</string> <key>FacebookDisplayName</key> <string>tblogindemo</string>
  • 如要使用任何 Facebook 對(duì)話框(例如,登錄、分享、應(yīng)用邀請(qǐng)等),以便從您的應(yīng)用切換至 Facebook 應(yīng)用遥缕,則您應(yīng)用程序的 info.plist 還必須包含以下代碼
<key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fb-messenger-share-api</string> <string>fbauth2</string> <string>fbshareextension</string> </array>
第三步 連接應(yīng)用委托
  • 在AppDelegate中添加代碼,啟動(dòng)時(shí)初始化 SDK宵呛,并在您執(zhí)行登錄或分享操作時(shí)单匣,讓 SDK 處理通過(guò)原生 Facebook 應(yīng)用獲得的結(jié)果。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        ApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)
        return true
    }
//以下方法只支持iOS 9以上
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
        let handled = ApplicationDelegate.shared.application(app, open: url, sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String, annotation: options[UIApplication.OpenURLOptionsKey.annotation])
        return handled
    }
第四步 實(shí)現(xiàn)功能
  • 添加Facebook登錄功能
override func viewDidLoad() {
        let loginBtn = FBLoginButton(type: .roundedRect)
        loginBtn.center = view.center
        view.addSubview(loginBtn)
}
  • 檢驗(yàn)是否成功接入
    點(diǎn)擊login按鈕能轉(zhuǎn)跳至Facebook授權(quán)后能返回應(yīng)用


  • 如果你的按鈕變成了logout宝穗,那就說(shuō)明已經(jīng)登錄成功了
進(jìn)階
  • 單純登錄肯定是不夠了户秤,我這里會(huì)把用戶的頭像以及信息顯示出來(lái)
  • 頭像顯示可以用Facebook封裝好的控件FBProfilePictureView,將FBProfilePictureView的profileID設(shè)置為userID即可
Profile.loadCurrentProfile { (currentProfile, error) in
            guard let profile = currentProfile else { return }
            let userid = profile.userID
            let name = profile.name
            self.profilePictureView.profileID = userid
            self.userDatailsLabel.text = name
        }

通過(guò)Profile可以獲取用戶信息逮矛,包括userID鸡号、firstName、middleName须鼎、lastName鲸伴、name

添加測(cè)試賬號(hào)
  • 為你的應(yīng)用添加管理員、開(kāi)發(fā)者晋控、測(cè)試者
    我的應(yīng)用----用戶身份----添加用戶


項(xiàng)目demo
因?yàn)檫@個(gè)demo只是用于了解Facebook登錄将饺,并沒(méi)有上線厚骗,所以請(qǐng)大家將FacebookAppID等修改為自己項(xiàng)目的編號(hào)施籍,否則是不可以進(jìn)行授權(quán)登錄的


參考
iOS集成facebook實(shí)現(xiàn)自動(dòng)登錄
尊重原創(chuàng)濒析,轉(zhuǎn)載請(qǐng)注明出處,謝謝!
未經(jīng)授權(quán)禁止轉(zhuǎn)載裹唆!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末誓斥,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子许帐,更是在濱河造成了極大的恐慌岖食,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件舞吭,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡析珊,警方通過(guò)查閱死者的電腦和手機(jī)羡鸥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)忠寻,“玉大人惧浴,你說(shuō)我怎么就攤上這事∞忍辏” “怎么了衷旅?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)纵朋。 經(jīng)常有香客問(wèn)我柿顶,道長(zhǎng),這世上最難降的妖魔是什么操软? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任嘁锯,我火速辦了婚禮,結(jié)果婚禮上聂薪,老公的妹妹穿的比我還像新娘家乘。我一直安慰自己,他們只是感情好藏澳,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布仁锯。 她就那樣靜靜地躺著,像睡著了一般翔悠。 火紅的嫁衣襯著肌膚如雪业崖。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,182評(píng)論 1 299
  • 那天蓄愁,我揣著相機(jī)與錄音腻要,去河邊找鬼。 笑死涝登,一個(gè)胖子當(dāng)著我的面吹牛雄家,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼趟济,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼乱投!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起顷编,我...
    開(kāi)封第一講書(shū)人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤戚炫,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后媳纬,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體双肤,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年钮惠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了茅糜。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡素挽,死狀恐怖蔑赘,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情预明,我是刑警寧澤缩赛,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站撰糠,受9級(jí)特大地震影響酥馍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜阅酪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一物喷、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧遮斥,春花似錦峦失、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至较屿,卻和暖如春隧魄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背隘蝎。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工购啄, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嘱么。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓狮含,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子几迄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 孩子假期課程已經(jīng)補(bǔ)完了蔚龙,帶著孩子和老人去海邊玩玩,這次準(zhǔn)備找一個(gè)小島住上兩天映胁,最終的決定木羹,把目標(biāo)定在了丹東的小鹿島...
    d6c9234a2e09閱讀 248評(píng)論 0 1
  • 白仲笙第一次見(jiàn)到仲喬木是在一節(jié)語(yǔ)文課上。那時(shí)她才三年級(jí)解孙,還是個(gè)瘦瘦小小的女孩坑填,細(xì)長(zhǎng)的眼睛里充滿了對(duì)世界的好奇...
    喬燁華閱讀 191評(píng)論 0 1
  • 假期返程,已經(jīng)好久沒(méi)有經(jīng)歷一場(chǎng)“豪堵”了弛姜,上次的經(jīng)歷還是在四年之前脐瑰。 天陰陰的,預(yù)報(bào)說(shuō)今天有雨娱据,但是還沒(méi)有下,大巴...
    心里藏著一座城閱讀 161評(píng)論 0 0
  • 突如其來(lái)的大雨亂了家長(zhǎng)們的方寸盅惜,離放學(xué)還有半個(gè)多小時(shí)中剩,前來(lái)接孩子的車(chē)流、人流便覆蓋了校門(mén)前的馬路抒寂。 自行車(chē)结啼、電動(dòng)車(chē)...
    伊甸浪子_4bf3閱讀 149評(píng)論 0 0