Android 滑块验证
先上图看看实现效果

1.在 app 的 build.gradle 添加依赖
implementation 'com.luozm.captcha:captcha:1.1.2'
2.将 Captcha 添加至布局文件
<com.luozm.captcha.Captcha
android:id="@+id/captCha"
android:layout_centerInParent="true"
android:layout_width="match_parent"
android:layout_height="265dp"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
app:mode="mode_bar"
app:src="@drawable/validate"
app:blockSize="50dp"
android:scaleType="centerCrop"
app:max_fail_count="4"/>
3.添加 Java 代码
public void showw(String advPic) {
Context context = MainActivity.this;
diaa = new Dialog(context, R.style.edit_AlertDialog_style);
diaa.setContentView(R.layout.item_pict);
captcha = diaa.findViewById(R.id.captCha);
final Button btn_mode = diaa.findViewById(R.id.btn_mode);
final Captcha captcha = diaa.findViewById(R.id.captCha);
ImageView cuowu = diaa.findViewById(R.id.im_cuowu);
// Glide.with(getApplication()).load(advPic).into(captcha );
captcha.setBitmap(advPic);
btn_mode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (captcha.getMode() == Captcha.MODE_BAR) {
captcha.setMode(Captcha.MODE_NONBAR);
btn_mode.setText("滑动条模式");
} else {
captcha.setMode(Captcha.MODE_BAR);
btn_mode.setText("无滑动条模式");
}
}
});
cuowu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
diaa.dismiss();
itData(mLongitude, mLatitude);
}
});
captcha.setCaptchaListener(new Captcha.CaptchaListener() {
@Override
public String onAccess(long time) {
Toast.makeText(MainActivity.this, "验证成功", Toast.LENGTH_SHORT).show();
diaa.dismiss();
diaa.setCanceledOnTouchOutside(true);
return "验证通过";
}
@Override
public String onFailed(int count) {
Toast.makeText(MainActivity.this, "验证失败,失败次数" + count, Toast.LENGTH_SHORT).show();
return "验证失败";
}
@Override
public String onMaxFailed() {
Toast.makeText(MainActivity.this, "验证超过次数,你的帐号被封锁", Toast.LENGTH_SHORT).show();
return "可以走了";
}
});
diaa.show();
diaa.setCanceledOnTouchOutside(true);
Window w = diaa.getWindow();
WindowManager.LayoutParams lp = w.getAttributes();
lp.x = 0;
lp.y = 40;
diaa.onWindowAttributesChanged(lp);
}
Android 滑块验证的更多相关文章
- Java + Selenium + OpenCV解决自动化测试中的滑块验证
最近工作过程中,一个常用的被测网站突然增加了滑块验证环节,导致整个自动化项目失效了. 为了解决这个滑块验证问题,在网上查阅了一些资料后,总结并实现了解决方案,现记录如下. 1.滑块验证思路 被测对象的 ...
- winform 仿web 滑块验证
winform 仿web 滑块验证 效果如下: 源码下载地址: https://download.csdn.net/download/u011392711/11109687
- jQuery手机触屏拖动滑块验证跳转插件
HTML: <!DOCTYPE html> <html lang="en"> <head> <title>jQuery手机触屏拖动滑 ...
- 关于selenium实现滑块验证
关于selenium实现滑块验证 python2.7+selenium2实现淘宝滑块自动认证参考链接:https://blog.csdn.net/ldg513783697/article/detail ...
- 原生js实现拖动滑块验证
拖动滑块验证是现在的网站随处可见的,各式各样的拖动法都有. 下面实现的是某宝的拖动滑块验证: <!DOCTYPE html> <html lang="en"> ...
- js移动端滑块验证解锁组件
本文修改自PC端的js滑块验证组件,PC端使用的是onmousedown,onmouseup,nomousemove.原文找不到了,也是博客园文章,在此感谢广大网友的生产力吧. 说下对插件和组件的理解 ...
- js 拖动滑块验证
备注:拖动滑块时尽量平移,chrome浏览器上没有卡顿情况,但是搜狗极速模式和360极速模式都遇到了卡顿,拖不动情况,应是浏览器内部对事件响应速度导致吧. JS代码: ;(function ($,wi ...
- Android证书验证存漏洞 开发者身份信息可被篡改(转)
原帖地址:http://bbs.pediy.com/showthread.php?p=1335278#post1335278 近期在国内网易,雷锋网等网站爆出谷歌市场上的索尼官方的备份与恢复应用&qu ...
- selenium滑块验证
使用selenium模拟登录解决滑块验证问题 本次主要是使用selenium模拟登录网页端的TX新闻,本来最开始是模拟请求的,但是某一天突然发现,部分账号需要经过滑块验证才能正常登录,如果还是模拟 ...
随机推荐
- mingw using pthread
转载http://www.cnblogs.com/tfanalysis/p/5505163.html ftp://sourceware.org/pub/pthreads-win32/ 有的时候需要使用 ...
- java fail-fast和fail-safe
快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(如增加.删除等),则会抛出Concurrent Modification Exception. ...
- Java继承(上)
继承的定义 在人类生活中的学徒关系,父子关系等等都属于继承: 但是在程序中是一种类与类的关系 在程序中可以使用父类的方法,也可以添加自己的方法,但是不能选择的继承,要继承就需要把所有的特点全部继承下来 ...
- PAT 乙级 1091 N-自守数 (15 分)
1091 N-自守数 (15 分) 如果某个数 K 的平方乘以 N 以后,结果的末尾几位数等于 K,那么就称这个数为“N-自守数”.例如 3×922=25392,而 25392 的末尾两位正好是 ...
- Linux安装rz/sz,htop插件
Linux下rz/sz安装及使用方法 sz: 将选定的文件发送(send)到本地机器; rz:运行该命令会弹出 一个文件选择窗口, 从本地选择文件上传到服务器(receive). 下载安装包 lrzs ...
- Quartz入门及简单实现
Quartz简介 Quartz是一个功能丰富的开源作业调度库,可以集成到几乎任何Java应用程序中 - 从最小的独立应用程序到最大的电子商务系统.Quartz可以用来创建执行数十,数百乃至数万个作业的 ...
- 第四章 FFmpeg转码
4.1 FFmpeg软编码H.264与H.265 4.1.1 x264编码参数简介 4.1.2 H.264编码举例
- bresenhan算法数学推导
//原帖http://www.doc88.com/p-612602414790.html
- android 开发 View _1_ View的子类们 和 视图坐标系图
目录: android 开发 View _2_ View的属性动画ObjectAnimator ,动画效果一览 android 开发 View _3_ View的属性动画ValueAnimator a ...
- py库: arrow (时间)
arrow是个时间日期库,简洁易用.支持python3.6 https://arrow.readthedocs.io/en/latest/ arrow官网api https://github.com/ ...