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

引言

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

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

什么是WhatsApp的Zero-Tap验证

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

WhatsApp Zero-Tap 验证的工作流程

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

● 握手:“握手”是一种您要实现的 Android intent 和公共类,而 WhatsApp 客户端可发起“握手”。使用本功能之前,需要先执行“握手”,在收到该验证模板消息后,WhatsApp 客户端将执行资格检查。如果没有错误,该客户端将启动 intent 并向用户显示该消息。当用户点击该消息的一键自动填写按钮时,WhatsApp 会自动加载您的应用并向该应用传递一次性密码或验证码。

● 请求验证码: 您的 App 向服务端请求一次性密码或验证码。

● 发送验证码:调用 Engagelab 的 WhatsApp API,发送 Zero-Tap 模板消息。

● WhatsApp 传输:Engagelab 收到请求后,会将验证码通过 WhatsApp 通道发送给用户的 WhatsApp 账户。这一步骤利用了 WhatsApp 的广泛用户基础和高效的消息传输系统。

● 自动填充验证码:当验证码通过 WhatsApp 发送到用户手机时,应用会自动捕获这个验证码。这是通过在应用中集成特定的接收器实现的,它能够识别并提取 WhatsApp 消息中的验证码。应用自动将捕获的验证码填充到相应的验证字段中。用户无需手动输入或切换应用来复制验证码。

● 完成验证: 用户完成验证过程,无需额外的点击或输入,整个过程既快速又流畅。

通过这种方式,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模板可以包含安全提示,如提醒用户不要与他人分享这些验证码。这种提示有助于提高用户对安全性的意识,尤其是在可能存在社交工程攻击的情况下。

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消息发送服务。

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

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

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

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。

● 对 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文件中:

对 对象进行实例化:

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消息模板,无需深入了解技术细节。这不仅减轻了企业的技术负担,也能为企业节约宝贵的时间和开发成本。

声明:本站转载此文目的在于传递更多信息,并不代表赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本网联系,我们将在第一时间删除内容,本网站对此声明具有最终解释权。
Copyright © DoNews 2000-2024 All Rights Reserved
蜀ICP备2024059877号-1     京ICP证151088号
京网文【2018】2361-237号