Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android

使用Account Kit进行免密验证

by
Difficulty:BeginnerLength:ShortLanguages:

Chinese (Simplified) (中文(简体)) translation by Zhang Xiang Liang (you can also view the original English article)

关于Account Kit

什么是免密验证?

免密验证不需要密码来注册或登录。用户通过验证的方式有两种,一次发给用户手机的SMS认证码,或者一次发给用户邮箱的链接。

为什么使用免密验证?

  • -给予用户无缝的登录或注册体验。
  • -保持对app的安全访问,因为用户不需要反复使用密码或者求助于猜测密码(比如说password )
  • -避免给用户增加创建并记住密码的负担

在这篇快速学习手册中,我将展示如何在安卓app中使用Facebook的Account Kit来进行免密验证。 用户可以通过手机号码或邮箱地址来注册或登录。用户甚至不需要有被授权的Facebook账号。

除此之外,Account Kit 还很容易实现,还能让你免于建立登录系统。

Facebook Account Kit homepage screenshot

Account Kit如何工作

下面的图标显示了Account Kit 工作原理。

How Facebook Account Kit works

验证发生在用户与app之间的一系列交换之后。首先用户初始化登录,也许是通过手机加载app。 然后验证码发送到用户的SMS,或者给邮箱发送一次性链接。再然后,假如用户输入验证码或者点击了链接,用户即通过了验证。

Facebook的Account Kit 的另外一个酷炫的特性是当用户将手机号输入到app时,Account Kit 尝试将输入的手机号码与用户Facebook绑定的手机号码进行匹配。假如用户登录了Facebook的安卓app,并且手机号码匹配成功,Account Kit将不会发送SMS验证码,并且用户将更加丝滑地登录进来。

使用Account Kit

1.准备工作

开始使用Account Kit之前,你需要:

2.打开Account Kit

进入你的APP页面,点击Add Product页面,选择Account Kit。然后点击Get Started按钮增加Account Kit。你将会看到Account Kit的配置页面。

Account Kit settings

3.声明依赖

build.gradle文件增加Account Kit SDK最新版本的依赖,然后同步工程。

4.更新AndroidManifest.xml

AndroidManifest.xml文件中增加Facebook app的ID,Account Kit客户端token(在Account Kit设置页面获取)和INTERNET权限。

5.更新资源文件

将APP ID和Account Kit客户端token添加到strings.xml文件。

还要将Account Kit主题添加到styles.xml.

6.初始化SDK

在Application类中,初始化SDK(记得在AndroidManifest.xml文件中添加android:name)。

7.初始化登录

我们必须为SMS和email登录验证写独立的handler。

对于SMS,在第5行,我们指定了登录类型LoginType.PHONE

对于email,在第5行,我们指定登录类型LoginType.EMAIL

8.画登录界面

下面是简单的登录界面,点击SMS登录或者email登录。

9.处理登录返回的响应。

现在,用户想要登录,在onActivityResult()方法处理响应。在这个方法里,我们能够处理成功,取消和失败的验证结果。

完整的app

现在运行APP,测试SMD和email登录。

The finished app

现在Account Kit JavaScript SDK不支持WebView登录,所以你不能从WebView登录Account Kit。你必须自己写原生代码来登录。

结语

在这篇短文中,你学到了使用Facebook的Account Kit来进行免密验证:包括什么是Account Kit,为什么要使用它和如何在安卓APP中实现它。

警告:免密验证不是很安全。对于安全性更重要的人不会使用它,比如银行APP。 所以要慎重考虑何时使用Account Kit,何时在传统验证模式下使用。

想了解更多关于Facebook Account Kit,参考official documentation。如果想学习更多的安卓开发知识,可查看Envato Tuts+的其他文章。

关注我们的公众号
Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.