最近看到不少 app 都有本機號碼一鍵登陸功能,感受這個功能對於 app 的註冊轉化和用戶體驗提高都有很大幫助,相信之後會成爲一個主流的驗證方式。安全
一鍵登陸主要功能就是讓用戶使用本機號碼一鍵登陸/註冊 app。手機號碼即用戶帳號,無需使用密碼和短信驗證,運營商網關直接校驗手機本機號。這個功能對於「懶癌」晚期用戶來講簡直是福音:登錄速度賊快,媽媽不再用擔憂我忘記密碼了!app
查了下其實三大運營商都有各自的接口來實現,就是一個個接入比較麻煩並且門檻也比較高。由於公司以前有項目用了極光推送,瞭解到極光開發者服務產品「極光認證」便可實現一鍵登陸功能。ide
極光認證整合了三大運營商的一鍵登陸功能,接入極光認證一個 SDK 就能夠實現三網用戶一鍵登陸App。參考極光文檔,我寫了一個 Android demo,用於測試這種新的驗證方式。詳細步驟以下:測試
1. 註冊極光開發者帳號並作開發者認證,若是以前有用過極光推送這步能夠直接省去。若是以前沒用極光的其餘 SDK 就要先註冊帳號,傳送門:www.jiguang.cn/identify。gradle
2. 在極光開發者平臺建立應用後,在認證設置頁面填寫應用包名、應用簽名、加密公鑰等信息。(PS:建立應用後會有一個 appkey,後面集成須要用到。)加密
3. 提交以後須要等待審覈,審覈仍是挺快的,大概半個小時就經過了。因爲是首次申請,極光送了我 10000 多條的測試條數,可謂良心。審覈經過後下載官方 SDK。傳送門:https://docs.jiguang.cn//jverification/resources/。設計
4. 搭建 Android Studio 開發環境3d
a) 解壓縮 SDK 文件夾,將 SDK 中 libs 文件夾下的文件,複製到項目中的libs文件夾中,res文件到對應的目錄orm
b) 在 modeule 的 gradle 配置中添加下配置:cdn
c) 參考極光的文檔,配置好 AndroidManifest
i.添加權限
ii. 註冊用於一鍵登陸的 activity
iii.填入極光的 appkey,這個在以前建立應用時得到
5. 在項目中添加一鍵登陸功能
a) 初始化方法
b) 在註冊按鈕綁定一點登陸功能
c) 若是你不喜歡默認的登陸頁面,極光認證一鍵登陸 SDK 中也提供了自定義頁面的接口,能夠按照本身設計稿來修改 UI
6. 獲取到一鍵登陸的 loginToken 後,提交給服務端,去極光換取手機號碼,而後就能夠用這個手機號碼來登陸了。若是號碼沒有註冊過,服務端會以該手機號碼自動註冊帳號。
上圖是我集成的demo裝在手機上能夠實現的效果,使用本機號碼便可實現一鍵註冊/登陸應用。
以上就是Android一鍵登陸SDK的集成步驟。如今愈來愈多的app都在接入一鍵登陸功能,想提高用戶體驗和產品安全度的開發者不妨參考使用。