Google+第三方登錄(IOS)

進入 https://console.developers.google.com/apis 選擇google+ api,
然后選擇管理,
點擊紅色區(qū)域

image.png

然后新建一個項目
image.png

輸入你的項目名,然后創(chuàng)建


image.png

接下來配置,參照這個鏈接
https://developers.google.com/identity/sign-in/ios/start-integrating
(還有視頻講解)

點擊創(chuàng)建憑據(jù)(CREATE AN OAUTH CLIENT ID),選擇你剛才創(chuàng)建的項目,選擇平臺(IOS),輸入BundleID


image.png

成功之后會讓你下載Json文件,
其中 CLIENT_ID 是在AppDelegate文件中GIDSignIn.sharedInstance().clientID (swift)的值

REVERSED_CLIENT_ID在下面這里設(shè)置


image.png

接下來參照這個
https://developers.google.com/identity/sign-in/ios/sign-in

AppDelegate添加GIDSignInDelegate協(xié)議
然后

//設(shè)置好代理和clientID
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GIDSignIn sharedInstance].clientID = @"YOUR_CLIENT_ID";
  [GIDSignIn sharedInstance].delegate = self;

  return YES;
}

//第三方登陸后回調(diào) 這邊稍微注意一下自己要適配的IOS系統(tǒng)版本
- (BOOL)application:(UIApplication *)app
            openURL:(NSURL *)url
            options:(NSDictionary<NSString *, id> *)options {
  return [[GIDSignIn sharedInstance] handleURL:url
                             sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
                                    annotation:options[UIApplicationOpenURLOptionsAnnotationKey]];
}

關(guān)于didSignInForUser這個方法,我OC沒有在appDelegate寫這個函數(shù),并沒有什么影響,不過swift里沒寫報錯了(不過我swift寫得比較晚,也許sdk更新了吧)

Google+有一個專門的GIDSignInButton,不過我是自己寫的Button,在button的點擊事件里調(diào)用
[[GIDSignIn sharedInstance] signIn];就行,
當然在你的這個button所在的控制器里,要添加代理

GIDSignIn*signIn = [GIDSignIn sharedInstance];
signIn.shouldFetchBasicProfile=YES;
signIn.delegate=self;
signIn.uiDelegate=self;

登錄成功后的回調(diào)

- (void)signIn:(GIDSignIn*)signIn didSignInForUser:(GIDGoogleUser*)user withError:(NSError*)error
{
    NSLog(@"user %@",user);
    NSLog(@"error %@",error);
}

之前用OC寫了一版,今年又被要求用Swift寫一版,基本大同小異。憑借著一些印象,記錄一下這個配置。如果有不對的地方,麻煩幫忙指出。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,239評論 3 119
  • 在前些時間,經(jīng)常出現(xiàn)有關(guān)抑郁癥致死的消息。我想這就是我們重視身體健康而輕視對心理健康的一種表現(xiàn)吧。就像是自己一心想...
    leannlyq閱讀 541評論 0 0
  • 不過是一張電影票。 國慶的前幾天,朋友圈里內(nèi)容很豐富得很,其中一條引起了我的關(guān)注,那就是電影《影》...
    劉金_閱讀 320評論 0 1

友情鏈接更多精彩內(nèi)容