最近看到很多app都有本機號碼一鍵登錄功能,感覺這個功能對於app的註冊轉化和用戶體驗提升都有很大幫助,相信以後會成為一個主流的驗證方式。
一鍵登錄主要功能就是讓用戶使用本機號碼一鍵登錄/註冊app。手機號碼即用戶帳號,無需使用密碼和簡訊驗證,運營商網關直接校驗手機本機號。這個功能對於「懶癌」晚期用戶來說簡直是福音:登陸速度賊快,媽媽再也不用擔心我忘記密碼了!
查了下其實三大運營商都有各自的接口來實現,就是一個個接入比較麻煩而且門檻也比較高。因為公司之前有項目用了極光推送,了解到極光開發者服務產品「極光認證」即可實現一鍵登錄功能。
極光認證整合了三大運營商的一鍵登錄功能,接入極光認證一個SDK就可以實現三網用戶一鍵登錄App。參考極光文檔,我寫了一個Android demo,用於測試這種新的驗證方式。詳細步驟如下:
註冊極光開發者帳號並做開發者認證,因為之前用過極光推送這步直接省去。如果之前沒用極光的其他SDK就要先註冊帳號,
在極光開發者平臺創建應用後,在認證設置頁面填寫應用包名、應用籤名、加密公鑰等信息。(PS:創建應用後會有一個appkey,後面集成需要用到。)
提交之後需要等待審核,審核還是挺快的,等了半個小時就通過了。由於是首次申請,極光送了我 10000 多條的測試條數,可謂良心。審核通過後下載官方SDK。(搜索極光文檔-認證-資源下載)
搭建Android Studio開發環境
解壓縮SDK文件夾,將SDK中libs文件夾下的文件,複製到項目中的libs文件夾中,res文件到對應的目錄
在modeule的gradle配置中添加下配置:
參考極光的文檔,配置好AndroidManifest
添加權限
註冊用於一鍵登錄的activity
填入極光的appkey,這個在之前創建應用時獲得
在項目中添加一鍵登錄功能
初始化方法
在註冊按鈕綁定一點登錄功能
如果你不喜歡默認的登錄頁面,極光認證一鍵登錄SDK中也提供了自定義頁面的接口,可以按照自己設計稿來修改UI
獲取到一鍵登錄的loginToken後,提交給服務端,去極光換取手機號碼,然後就可以用這個手機號碼來登錄了。如果號碼沒有註冊過,服務端會以該手機號碼自動註冊帳號。
上圖是我集成的demo裝在手機上可以實現的效果,使用本機號碼即可實現一鍵註冊/登錄應用。
以上就是Android一鍵登錄SDK的集成步驟。現在越來越多的app都在接入一鍵登錄功能,想提升用戶體驗和產品安全度的開發者不妨參考使用。