Android 应用验证码模糊效果

本文介绍了如何在Android原生应用中实现验证码的模糊显示,包括需求背景、分析思路和实现方式。通过添加噪点和干扰线来提高验证码的安全性,提供了一段工具类代码和调用方法,以增强验证码的复杂度,防止被轻易识破。
摘要由CSDN通过智能技术生成

Android 原生应用验证码糊化展示

大概长这样~
示例1 实例2 在这里插入图片描述 在这里插入图片描述

需求背景

维护老版本应用,里面有自生成的验证码(非短信码,类似网页上的那个,让你输入几个字符的玩意儿),原来的就是个TextView里面展示几个数字,现在客户说不安全,容易被识破 ,需要增加复杂程度,于是就有了现在的这个东西。

分析思路

看了Web的一些案例,多是以文字糊化、文字扭曲、增加噪点、干扰线等方式,决定采用噪点、干扰线作为主要的糊化策略。搜了下前辈们的文章,其中这篇文章的内容比较容易上手,于是拿这里的代码进行修改。

实现的功能

看下图吧,大概就是这些,另外还有个自定义字符组的功能,参照后续源码。
在这里插入图片描述

工具类代码

package fun.chice.verificationcode;

import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.RectF;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.widget.ImageView;

import java.util.Random;


/**
 * Verification code creator.
 * Created by Chice on 2018/9/27.
 * Email:2206143885@qq.com
 * CSDN:http://blog.csdn.net/chicet
 */

public class VerificationCodeCreator {
    private final char[] CODE_CHARS = {
            '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
            'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'k', 'm',
            'n', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
            'A', 'B', 'C', 'D', 'E', 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值