Android-使用Firebase Auth UI實現Google登入

Vincent Zheng
新手工程師的程式教室
4 min readMar 3, 2019

--

透過Google帳號在App註冊是常見的功能,只要有Android行動裝置的人,基本上也會有Google帳號。本文就來介紹如何使用Firebase Auth UI實現Google登入的功能。

一、準備Firebase專案

請準備一個Firebase專案和一個要實作登入功能的Android App程式專案。並且將App專案加入到Firebase中。

加入完成後,前往Firebase的專案設定頁面,會看到中間有一個「您的應用程式」區塊。請在最下方為剛剛加入的App專案添加「 SHA憑證指紋」。

那憑證指紋要怎麼取得呢?請到https://sourceforge.net/projects/openssl/下載OpenSSL工具。解壓縮後,開啟命令提示字元或終端機,進入裡面的bin資料夾,執行指令。

※ Windows用戶
keytool -list -v -keystore %USERPROFILE%\.android\debug.keystore
※ Mac用戶
keytool -list -v -keystore ~/.android/debug.keystore

接著輸入密碼(預設是android)後,會得到一串訊息。

查詢SHA憑證指紋

請將SHA1的代碼添加到剛剛Firebase的應用程式中,並儲存。

添加應用程式的SHA1憑證指紋

最後前往Firebase Authentication的「登入方式」頁籤。這邊有Firebase所支援的第三方登入管道,此處啟用Google。

啟用Google登入

二、準備程式專案函式庫

回到Android App專案,在Gradle檔匯入需要的函式庫,筆者所使用的如下:

// Firebase核心
implementation 'com.google.firebase:firebase-core:16.0.6'
// Firebase Authentication (帳號驗證模組)
implementation 'com.google.firebase:firebase-auth:16.1.0'
// Firebase Auth UI (第三方登入畫面模組)
implementation 'com.firebaseui:firebase-ui-auth:4.2.1'

在AndroidManifest.xml中,宣告網路存取權限

<manifest ...>    <uses-permission android:name="android.permission.INTERNET" />    <application ...>
...
</application>
</manifest>

--

--

Vincent Zheng
新手工程師的程式教室

我是Vincent,是個來自資管系的後端軟體工程師。當初因為學校作業,才踏出寫部落格的第一步。這裡提供程式教學文章,包含自學和工作上用到的經驗,希望能讓讀者學到東西。我的部落已搬家至 https://chikuwa-tech-study.blogspot.com/