最近看到很多 app 都有本機號碼一鍵登錄功能,感覺這個功能對於 app 的注冊轉化和用戶體驗提升都有很大幫助,相信以后會成為一個主流的驗證方式。
一鍵登錄主要功能就是讓用戶使用本機號碼一鍵登錄/注冊 app。手機號碼即用戶賬號,無需使用密碼和短信驗證,運營商網關直接校驗手機本機號。這個功能對於“懶癌”晚期用戶來說簡直是福音:登陸速度賊快,媽媽再也不用擔心我忘記密碼了!
查了下其實三大運營商都有各自的接口來實現,就是一個個接入比較麻煩而且門檻也比較高。因為公司之前有項目用了極光推送,了解到極光開發者服務產品“極光認證”即可實現一鍵登錄功能。
極光認證整合了三大運營商的一鍵登錄功能,接入極光認證一個 SDK 就可以實現三網用戶一鍵登錄App。參考極光文檔,我寫了一個 Android demo,用於測試這種新的驗證方式。詳細步驟如下:
1. 注冊極光開發者賬號並做開發者認證,如果之前有用過極光推送這步可以直接省去。如果之前沒用極光的其他 SDK 就要先注冊賬號,傳送門:https://www.jiguang.cn/identify。
2. 在極光開發者平台創建應用后,在認證設置頁面填寫應用包名、應用簽名、加密公鑰等信息。(PS:創建應用后會有一個 appkey,后面集成需要用到。)

3. 提交之后需要等待審核,審核還是挺快的,大概半個小時就通過了。由於是首次申請,極光送了我 10000 多條的測試條數,可謂良心。審核通過后下載官方 SDK。傳送門:https://docs.jiguang.cn//jverification/resources/。
4. 搭建 Android Studio 開發環境
a) 解壓縮 SDK 文件夾,將 SDK 中 libs 文件夾下的文件,復制到項目中的libs文件夾中,res文件到對應的目錄

b) 在 modeule 的 gradle 配置中添加下配置:

c) 參考極光的文檔,配置好 AndroidManifest
i.添加權限

ii. 注冊用於一鍵登錄的 activity

iii.填入極光的 appkey,這個在之前創建應用時獲得

5. 在項目中添加一鍵登錄功能
a) 初始化方法

b) 在注冊按鈕綁定一點登錄功能

c) 如果你不喜歡默認的登錄頁面,極光認證一鍵登錄 SDK 中也提供了自定義頁面的接口,可以按照自己設計稿來修改 UI

6. 獲取到一鍵登錄的 loginToken 后,提交給服務端,去極光換取手機號碼,然后就可以用這個手機號碼來登錄了。如果號碼沒有注冊過,服務端會以該手機號碼自動注冊賬號。

上圖是我集成的demo裝在手機上可以實現的效果,使用本機號碼即可實現一鍵注冊/登錄應用。
以上就是Android一鍵登錄SDK的集成步驟。現在越來越多的app都在接入一鍵登錄功能,想提升用戶體驗和產品安全度的開發者不妨可以參考使用。