如何使用WhatsApp简化App的用户验证流程?

如何使用WhatsApp简化App的用户验证流程?


引言

为了提升用户体验和保障安全性,越来越多的 App 在用户注册和登录时采用验证码验证。然而,面对国际市场,国内 App 经常面临传统短信验证码成本高、送达不稳定的问题。同时,用户在接收和输入短信验证码时需要频繁切换应用,增加了操作步骤和出错的可能性。为此,WhatsApp 推出了 zero-tap 模板消息,极大地优化了这一流程。

a9ebfc20b85f334210ee47e263507c38.jpeg

Engagelab,作为 WhatsApp 的官方服务提供商(BSP),已经完全支持 WhatsApp 的 zero-tap 验证码模板消息。我们的系统允许 App 快速、安全地通过 WhatsApp 发送验证码,用户在不离开原应用的情况下即可接收并自动填充验证码,极大地提高了操作便捷性和效率。这种方式不仅减少了用户的操作步骤,降低了输入错误的风险,还提升了整体的安全性。

什么是WhatsApp的Zero-Tap验证

WhatsApp 的 Zero-Tap 验证是一种先进的认证技术,它允许用户在应用内直接接收并自动填充一次性密码或验证码,目前只支持 Android 平台。这种模板是 WhatsApp 为了提高用户体验和安全性而开发的特殊功能。它的核心优势在于“零点击”——用户无需进行任何额外操作,验证码就能自动出现在应用中,效果如下图所示:

6a904e1f3293f44102feb0a8d77125c2.jpeg124df19f6f1b074838a85e4793207804.jpeg

9d3361aad469aa65caa66f45be5f4423.jpeg

9a77226b8c83d5b8e49268515e732f7a.jpeg

WhatsApp Zero-Tap 验证的工作流程

WhatsApp Zero-Tap 模板的工作流程可以分为几个简单的步骤:

  • 握手:“握手”是一种您要实现的 Android intent 和公共类,而 WhatsApp 客户端可发起“握手”。使用本功能之前,需要先执行“握手”,在收到该验证模板消息后,WhatsApp 客户端将执行资格检查。如果没有错误,该客户端将启动 intent 并向用户显示该消息。当用户点击该消息的一键自动填写按钮时,WhatsApp 会自动加载您的应用并向该应用传递一次性密码或验证码。
  • 请求验证码: 您的 App 向服务端请求一次性密码或验证码。
  • 发送验证码:调用 Engagelab 的 WhatsApp API,发送 Zero-Tap 模板消息。
  • WhatsApp 传输:Engagelab 收到请求后,会将验证码通过 WhatsApp 通道发送给用户的 WhatsApp 账户。这一步骤利用了 WhatsApp 的广泛用户基础和高效的消息传输系统。
  • 自动填充验证码:当验证码通过 WhatsApp 发送到用户手机时,应用会自动捕获这个验证码。这是通过在应用中集成特定的接收器实现的,它能够识别并提取 WhatsApp 消息中的验证码。应用自动将捕获的验证码填充到相应的验证字段中。用户无需手动输入或切换应用来复制验证码。
  • 完成验证: 用户完成验证过程,无需额外的点击或输入,整个过程既快速又流畅。

8128725ec781b3926f7cc38afe20423e.jpeg

通过这种方式,WhatsApp 的 Zero-Tap 模板大大简化了验证码的接收和输入过程,为用户提供了更加便捷和安全的体验。这种方法不仅减少了用户的操作负担,还提高了验证码传输的安全性,因为验证码直接从 WhatsApp 发送到应用,减少了被拦截的风险。此外,这种方法还能有效减少因验证码延迟或丢失导致的用户挫败感,从而提高整体的用户满意度和应用的可靠性。

WhatsApp Zero-Tap 验证的主要优势

1. 提升用户体验

使用 WhatsApp 的 Zero-Tap 模板为用户带来了显著的体验提升,主要体现在以下几个方面:

  • 无需离开应用即可接收验证码:

用户在使用应用时,如需进行身份验证或其他安全检查,通常需要接收并输入验证码。传统方式中,用户需要切换到短信或邮箱来获取验证码,这不仅打断了他们的操作流程,还增加了操作的复杂性。WhatsApp 的 Zero-Tap 模板允许用户在应用内直接接收验证码,无需切换到其他应用或平台,从而提供了更加流畅和连贯的用户体验。

  • 自动填充功能,减少用户操作步骤:

传统的验证码输入过程需要用户手动复制和粘贴或输入验证码,这不仅耗时而且容易出错。WhatsApp 的 Zero-Tap 模板通过自动填充功能,将验证码直接输入到应用中的相应字段里。这种自动化处理大大减少了用户的操作步骤,降低了输入错误的可能性,使整个验证过程更加高效和无误。

  • 减少对传统短信服务的依赖:

在许多地区,短信服务可能不稳定或延迟较高,这会影响验证码的接收。通过使用 WhatsApp,一个广泛使用且通常更稳定的通讯平台,应用能够更可靠地传递验证码,确保用户无论身处何地都能及时接收到验证码。

2. 安全性增强

WhatsApp 的 Zero-Tap 模板在提升用户体验的同时,也显著增强了安全性,主要体现在以下几个方面:

  • 验证码直接发送到用户的 WhatsApp,减少被拦截的风险:

传统的验证码发送方式(如短信或电子邮件)可能面临被拦截或截取的风险,尤其是在不安全的网络环境中。WhatsApp 的 Zero-Tap 模板通过加密的通讯渠道直接将验证码发送到用户的 WhatsApp 账户,这大大降低了验证码被第三方截取的可能性,从而增强了整个验证过程的安全性。

  • 支持安全建议,如“不要分享此代码”:

在发送验证码时,WhatsApp 的 Zero-Tap 模板可以包含安全提示,如提醒用户不要与他人分享这些验证码。这种提示有助于提高用户对安全性的意识,尤其是在可能存在社交工程攻击的情况下。

c9981733e0719c8751c41a35e184fa08.jpeg

3. 提高效率

WhatsApp 的 Zero-Tap 模板不仅提升了安全性和用户体验,还在效率方面带来了显著的提升。以下是其主要优势:

  • 减少用户输入错误:

在传统的验证码接收方式中,用户需要从短信或电子邮件中手动复制验证码,然后输入到应用中。这个过程容易出现输入错误,尤其是在小屏幕的移动设备上。

WhatsApp 的 Zero-Tap 模板通过自动填充验证码,有效地消除了这种因手动输入引起的错误。自动化的验证码发送和填充过程减少了手动操作的需要,从而减少了因输入错误导致的重试和用户挫败感。

  • 优化操作流程:

通过自动化验证码的接收和填充,WhatsApp 的 Zero-Tap 模板优化了整个操作流程。用户无需在不同的应用或页面之间切换来获取和输入验证码,这使得整个过程更加流畅和高效。

对于那些需要频繁身份验证的应用来说,这种优化可以显著提高整体的操作效率,减少用户在验证过程中的时间消耗。

WhatsApp Zero-Tap 验证集成指南

实施 WhatsApp 的 Zero-Tap 模板需要遵循一定的步骤,Enagagelab 作为 WhatsApp 的 BSP,你可以通过 Engagelab 注册 WhatsApp 商业账号并开通这个服务,以下是一个简明的指南,旨在帮助开发者和业务运营者有效地集成和使用这一功能。

1、注册 Engagelab 平台开通 WhatsApp 服务

按照 https://www.engagelab.com/zh_CN/docs/whatsapp/quick-access/open-service 文档指引,注册Engagelab 账号开通服务之后,进入 WhatsApp 子站的概览页,依次按此以下 4 个步骤(注册商业账户、注册发送号、验证发送号、发送消息)开通 WhatsApp 消息发送服务。

6af601f5ae13df717e9a1c0d4d394a04.jpeg

2、创建 Zero-Tap 身份验证模板

在 Engagelab WhatsApp 子站后台创建“身份验证”模板,输入模板名称、语言:

3e946727a5bde575c0a9846f3996ecd6.jpeg

模板创建好之后,点击“编辑”按钮,输入包名与应用签名Hash:

b9a869567d8238da1e0efbadf338ad7e.jpeg

3、Android App 实现与 WhatsApp 的握手:

  • 使用 SDK

将以下配置添加到您的 Gradle 文件中:

dependencies {

implementation 'com.whatsapp.otp:whatsapp-otp-android-sdk:0.1.0'

}

将 mavenCentral() 添加到您的存储库中:

repositories {

mavenCentral()

}

  • 声明 activity

声明可接收一次性密码或验证码的活动和意图筛选条件。意图筛选条件必须具有操作名称 com.whatsapp.otp.OTP_RETRIEVED 。

<activity
android:name=".ReceiveCodeActivity"
android:enabled="true"
android:exported="true"
android:launchMode="standard">
<intent-filter>
<action android:name="com.whatsapp.otp.OTP_RETRIEVED" />
</intent-filter>
</activity>

  • 对 WhatsAppOtpIncomingIntentHandler 对象进行实例化

定义活动公共类并对 WhatsAppOtpIncomingIntentHandler 对象进行实例化,以处理意图、验证一次性密码并处理错误。

public class ReceiveCodeActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WhatsAppOtpIncomingIntentHandler incomingIntentHandler = new WhatsAppOtpIncomingIntentHandler();
incomingIntentHandler.processOtpCode(
intent,
// call your function to validate
(code) -> validateCode(code),
// call your function to handle errors
(error, exception) -> handleError(error, exception));
}

  • 发起“握手”

对 WhatsAppOtpHandler 对象进行实例化,并将您的上下文传递到 .sendOtpIntentToWhatsApp() 方法中:

WhatsAppOtpHandler whatsAppOtpHandler = new WhatsAppOtpHandler();
whatsAppOtpHandler.sendOtpIntentToWhatsApp(context);

  • 检查是否安装了 WhatsApp

将以下内容添加到您的AndroidManifest.xml文件中:

<queries>
<package android:name="com.whatsapp"/>
<package android:name="com.whatsapp.w4b"/>
</queries>

对 对象进行实例化:

WhatsAppOtpHandler whatsAppOtpHandler = new WhatsAppOtpHandler();

通过将 isWhatsAppInstalled 方法作为一个 if 语句中的分句进行传递,检查是否已安装 WhatsApp 客户端:

If (whatsAppOtpHandler.isWhatsAppInstalled(context)) {
// ... do something
}

结论

在数字化和移动优先的时代,简化和保护用户的在线体验变得越来越重要。WhatsApp 的 Zero-Tap 验证,结合 EngageLab 的专业服务,为企业提供了一种革新的方法来优化App的验证流程。这不仅提升了用户体验,还增强了安全性,并且在保护用户隐私的同时提高了效率。

另一方面,EngageLab 作为 WhatsApp 的 BSP,为企业提供了简单而高效的一次性密码(OTP)或验证码的集成解决方案。通过 EngageLab,企业能够轻松集成 WhatsApp 的 Zero-Tap 消息模板,无需深入了解技术细节。这不仅减轻了企业的技术负担,也能为企业节约宝贵的时间和开发成本。

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本火锅店点餐系统采用Java语言和Vue技术,框架采用SSM,搭配Mysql数据库,运行在Idea里,采用小程序模式。本火锅店点餐系统提供管理员、用户两种角色的服务。总的功能包括菜品的查询、菜品的购买、餐桌预定和订单管理。本系统可以帮助管理员更新菜品信息和管理订单信息,帮助用户实现在线的点餐方式,并可以实现餐桌预定。本系统采用成熟技术开发可以完成点餐管理的相关工作。 本系统的功能围绕用户、管理员两种权限设计。根据不同权限的不同需求设计出更符合用户要求的功能。本系统中管理员主要负责审核管理用户,发布分享新的菜品,审核用户的订餐信息和餐桌预定信息等,用户可以对需要的菜品进行购买、预定餐桌等。用户可以管理个人资料、查询菜品、在线点餐和预定餐桌、管理订单等,用户的个人资料是由管理员添加用户资料时产生,用户的订单内容由用户在购买菜品时产生,用户预定信息由用户在预定餐桌操作时产生。 本系统的功能设计为管理员、用户两部分。管理员为菜品管理、菜品分类管理、用户管理、订单管理等,用户的功能为查询菜品,在线点餐、预定餐桌、管理个人信息等。 管理员负责用户信息的删除和管理,用户的姓名和手机号都可以由管理员在此功能里看到。管理员可以对菜品的信息进行管理、审核。本功能可以实现菜品的定时更新和审核管理。本功能包括查询餐桌,也可以发布新的餐桌信息。管理员可以查询已预定的餐桌,并进行审核。管理员可以管理公告和系统的轮播图,可以安排活动。管理员可以对个人的资料进行修改和管理,管理员还可以在本功能里修改密码。管理员可以查询用户的订单,并完成菜品的安排。 当用户登录进系统后可以修改自己的资料,可以使自己信息的保持正确性。还可以修改密码。用户可以浏览所有的菜品,可以查看详细的菜品内容,也可以进行菜品的点餐。在本功能里用户可以进行点餐。用户可以浏览没有预定出去的餐桌,选择合适的餐桌可以进行预定。用户可以管理购物车里的菜品。用户可以管理自己的订单,在订单管理界面里也可以进行查询操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值