iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 11
0
Mobile Development

顏色 countenance APP製作筆記系列 第 11

[Day 11] Firebase使用者帳號設定

  • 分享至 

  • xImage
  •  

成功將Firebase加入專案後,就可以將Firebase的功能加入專案中。今天會示範如何使用Firebase建立「顏色」app的使用者帳號,並完成註冊、登入及登出功能。

設定Firebase信箱註冊

參考資料:https://firebase.google.com/docs/auth/ios/start

  1. 到Firebase官網點選「Get started」按鈕,並點選先前建立的Firebase專案
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458J3YFwjek8I.png

  2. 進入專案後,點選左側選單「Authentication」按鈕,右側會出現使用者認證相關功能
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458z5PzWpsoMD.png

  3. 點選「Sign-in method」選擇app的登入方式,在「顏色」app中採用輸入信箱和密碼方式登入,因此點擊「電子郵件/密碼」後方的鉛筆圖示
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458FeW5eu4Sn0.png

  4. 啟用「使用者能夠透過電子郵件地址和密碼註冊」並儲存,「電子郵件/密碼」狀態會呈現「已啟用」
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458momUfhkJj8.png

  5. 點選「Users」可查看app的使用者,除了可以在app中讓使用者創建帳號密碼外,也可透過點選「新增使用者」手動新增使用者帳號
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458fnga6UsBgb.png

  6. 新增完後,會出現使用者帳號相關資訊,最後一欄可看到這個帳號在Firebase的UID
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458CU6ufrmTiW.png

5、6步驟是由開發人員手動新增使用者帳號,但通常使用者帳號是使用者註冊時自動新增,因此需要於Xcode中撰寫註冊程式。

撰寫Firebase註冊、登入、登出程式

參考資料:https://firebase.google.com/docs/auth/ios/start

  1. 點擊Xcode專案資料夾中的「Podfile」檔案,確認是否有「pod 'Firebase/Auth'」
    https://ithelp.ithome.com.tw/upload/images/20200924/20130458dWGz5iwZjH.png

  2. 開啟「(專案名稱).xcworkspace」檔案,並點擊想要使用功能的swift檔,於檔案最上方輸入「import FirebaseAuth」

import FirebaseAuth
  1. 新使用者註冊
Auth.auth().createUser(withEmail: email, password: password) { authResult, error in
  // ...
}
  1. 已存在的使用者登入
Auth.auth().signIn(withEmail: email, password: password) {authResult, error in
  // ...
}

在3、4步驟中

  • email地方代入使用者的帳號,型別必須是字串
  • password地方代入使用者的密碼,型別必須是字串
  • 若發生錯誤時,會將錯誤訊息放入error中,將下列程式碼放入3、4步驟的函式中,判斷是否有錯誤產生
If error != nil{
	//有錯誤時執行
}else{
	//沒錯誤時執行
}
  1. 使用者登出
do {
  try Auth.auth().signOut()
} catch let signOutError as NSError {
  print ("Error signing out: %@", signOutError)
}
  • 使用do{}catch{}來判斷是否有例外狀況,若有例外狀況時會執行catch內的程式
  • 使用Authentication時若發生錯誤,會收到一個非nil的NSError參數

使用Firebase後,只要輸入上述簡單的程式碼就可以完成使用者註冊、登入及登出功能,是不是非常方便呢?除此之外,Firebase還提供許多好用的功能,明天會介紹如何使用Firebase雲端存取使用者資料。


上一篇
[Day 10] Firebase加入專案(下)
下一篇
[Day 12] 建立Firestore資料庫
系列文
顏色 countenance APP製作筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言