讓APP能以手機號碼註冊成為會員,使用Firebase 2017的Phone簡訊驗證

作者 | 2017-06-10

古老的方法

有許多的網站或APP會在註冊時用到手機號碼驗證,要讓一個APP的會員註冊能夠以使用者的手機號碼,輸入號碼後再傳送帶有驗證碼的簡訊,待收到簡訊後輸入驗證碼,最後再完成註冊流程。開發工作包括如下:

前端APP介面

設計一個註冊畫面,讓使用者輸入手機號碼,並送到後台伺服器端的【註冊服務程式】,由它判斷並產生後台回應碼給APP後,再準備讓使用者輸入簡訊驗證碼。

簡訊傳送平台API

找到一個簡訊服務平台,註冊服務後預繳數百則的簡訊費用,再下載、詳讀它的傳送API文件,撰寫測試程式,確認其運行方法。

後台註冊服務程式

接收手機號碼,檢查是否已註冊過,如已註冊過則回應錯誤碼給前端,若無,則產生亂數驗證碼,最後產生簡訊傳送平台的封包,送出驗證簡訊至使用者的號碼。

後台驗證服務程式

接收前端APP傳來的驗證碼,比對會員資料庫,並確認驗證碼的正確性,若正確無誤,新增會員資料到資料庫,再回送驗證結果與會員ID至APP端。

光是這些開發、測試的工作就需要HTTP網路協定、前端Android開發、後台服務程式開發、資料庫設計與開發能力,再經過3-5天,甚至1星期以上的時間,這個功能才會完善、完整。

Firebase的電信驗證

在2017年的Google IO開發者大會中特別談到Firebase的會員認證加入了Phone驗證方式,支援使用者以手機號碼並接收簡訊驗證,這為原本已有Email、Google、Facebook、Twitter、Github等驗證加入了有競爭力的生力軍。

最近手上有個新創專案剛好需要開發這類功能,我真的不想花數天去開發上述的服務、資料庫等工作,所以,使用了最新版本的Firebase-auth函式庫來完成它。

沒想到,只花了30分鐘就commit這個功能了,打完收工。

以下是執行結果的畫面錄影,測試用手機號碼我加了點馬賽克:

這些富有競爭力的技術,在目前雲端服務迅速發展下,已經是世界公認的開發能力了。學習Android應該重視的是基礎與架構,再加上操作能力、除錯能力,在這些基礎上如果能再加入雲端、Firebase等開發能力與經驗,一定會成為企業競爭力的重要推手,也當然是創業的利器與資產。

如果對於Firebase、雲端Cloud Functions與地圖位置的實作有興趣,可參考專為雲端技術所設計的實務課程【Android進階雲端實務整合 】,以最佳效益方式獲得技術原理、應用面的實作能力。

相關文章:

Category: Android Firebase 標籤:, , , , ,

關於 Hank Tom

專長為程式語言、雲端服務開發,Linux系統管理, 任職:利拓科技 技術長,海林行動科技 技術總監 輔仁大學 兼任助理教授 ,為 Android高效入門>深度學習、CentOS 7建置、管理與伺服器架設實戰、Java網路程式設計、雲端網頁程式設計-Google App Engine應用實作 等書作者

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *