输入ipad输入访问限制密码是什么

android 开发(20)
登陆界面对密码输入次数的控制,达到次数软件锁死或者提示用户过几分钟才能在输入的功能,现在的软件大多要求这样,
首先说一下整体的思路:
1.需要的类,①一个Application,②一个Activity(登陆界面),③一个Executors(计时器)
2.在application中的有两个变量①记录登陆界面的密码输入框是否被锁死的状态值(boolean flag),②记录密码错误到达指定次数时的当前时间(long currentTime), 八个方法:其中的四个方法是两个变量的set()get()方法,另外四个分别是:保存(flag和currentTime)到内存的方法和从内存获取(flag和currentTime)的方法;两个变量都在application中国的onCreate()方法中进行初始化,分别获取本地的值
3,在Activity的onCreate()方法中,调用application中的两个变量值的get方法获取到本地的值;并进行第一次判断,如果flag为true也就是密码输入框被锁,那么就执行一个判断本地时间和当前时间大小的方法;
flag为false就不用执行;
4.在登陆界面的密码输入到达指定次数时的操作:
①将设置输入框失去焦点,不可输入;
②调用application中的保存时间值和状态值的方法将当前时间加上一个你限制用户多少分钟后才能输入的时间和状态值为false保存到本地;
注:使用System.currentTimeMillis();
获得值单位是毫秒;
③开启一个线程;使用ExecutorsExecutors.newSingleThreadScheduledExecutor();开启一个计时器来进行判断,每过几秒进行一个词判断时间是否到达;
④当时间到达指定时间值也就是从本地取得值和当前取得值一样就进行初始化状态值和输入框恢复焦点可输入状态;
创建一个类BaseApplication继承Application类
public class BaseApplication extends Application {
private static final String TAG = BaseApplication.class.getName();
private SharedPreferences sp1, sp2, sp3, sp4;
private boolean isLockPin = false;
private long lockPinT
public void onCreate() {
super.onCreate();
sp3 = getSharedPreferences(ConstanField.FILEUNLOCK, MODE_PRIVATE);
sp4 = getSharedPreferences(ConstanField.FILEOLDTIME, MODE_PRIVATE);
this.isLockPin = getLockPinFlag();
this.lockPinTime = getLockCertPinTime();
public void saveLockPinFlag(boolean flag) {
LogUtil.d(TAG, "saveLockPinFlag().");
SharedPreferences.Editor editor = sp3.edit().putBoolean(ConstanField.EXECUTLOCK, flag);
public boolean getLockPinFlag() {
LogUtil.d(TAG, "getLockPinFlag().");
return sp3.getBoolean(ConstanField.EXECUTLOCK, false);
public long getLockPinTime() {
LogUtil.d(TAG, "getLockPinTime().");
return lockPinT
public void setLockPinTime(long lockPinTime) {
LogUtil.d(TAG, "setLockPinTime().");
this.lockPinTime = lockPinT
public void saveLockPinTime(long value) {
LogUtil.d(TAG, "saveLockPinTim().");
SharedPreferences.Editor editor = sp4.edit().putLong(ConstanField.CURENTTIME, value);
public long getLockCertPinTime() {
LogUtil.d(TAG, "getLockCertPinTime().");
long aLong = sp4.getLong(ConstanField.CURENTTIME, 444);
在Activity中
public class LoadActivity
extends Activity{
private BaseA
private static int count = 3;
private boolean unlock = false;
private long tryAgain = 0;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
app = (BaseApplication) getApplication();
unlock = app.getLockPinFlag();
long lockPinTime = app.getLockPinTime();
if (unlock) {
etpin.setFocusable(false);
myTread();
public void checkInputValue(){
boolean setPinFocusState = setPinFocusState();
if (!setPinFocusState) {
if(你的密码错误){
showToast("pin码输入错误,你还剩" + count + "次输入机会");
public boolean setPinFocusState() {
LogUtil.d(TAG, "setPinFocusState().");
if (count &= 1) {
showToast("您今天的输入次数已用完");
etpin.setText("");
saveCurrentTime();
etpin.setFocusable(false);
return false;
etpin.setFocusable(true);
etpin.setFocusableInTouchMode(true);
etpin.requestFocus();
return true;
public void saveCurrentTime() {
long systemTime = getSystemTime() + 180 * 1000;
app.saveLockPinTime(systemTime);
app.saveLockPinFlag(true);
myTread();
public void myTread() {
LogUtil.e(TAG, "myThread().");
sched = Executors.newSingleThreadScheduledExecutor();
sched.scheduleWithFixedDelay(new Runnable() {
public void run() {
han.sendEmptyMessage(START);
}, 10, 10, TimeUnit.SECONDS);
public long getSystemTime() {
LogUtil.d(TAG, "getSystemTime().");
long time = System.currentTimeMillis();
LogUtil.i(TAG, "time:" + time);
private Handler han = new Handler() {
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what == START) {
checkTimeLock();
etpin.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
showToast("Please ( " + tryAgain + " ) minutes try again.");
private void checkTimeLock() {
LogUtil.e(TAG, "checkTimeLock().");
long systemTime = getSystemTime();
long lockPinTime = app.getLockCertPinTime();
tryAgain = lockPinTime - systemT
LogUtil.i(TAG, "systemTime:" + systemTime + ",lockPinTime:" + lockPinTime + ",tryAgain:" + tryAgain);
if (systemTime == lockPinTime || lockPinTime - systemTime &= 0) {
etpin.setFocusable(true);
etpin.setFocusableInTouchMode(true);
etpin.requestFocus();
etpin.findFocus();
sched.shutdownNow();
count = 3;
tryAgain = 0;
app.saveLockPinFlag(false);
app.saveLockPinTime(0);
this.unlock = false;
这样不管你是切换界面还是退出程序都可以完成密码功能的实现;
其中的ConstanField是一个常量类;
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3511次
排名:千里之外
原创:14篇
转载:16篇
(1)(1)(8)(10)(10)查看: 1563|回复: 18
限制密码输入错误次数的VBA
阅读权限20
在线时间 小时
& & & & & & & &
自己写了一个小程序,其中大部分代码都是借助于论坛里面的各位前辈的代码,也有求助于其他前辈的,也要再次感谢例如前辈的热心帮助,目前遇到的一个问题就是,想要达到登陆界面连续输入3次密码错误,弹出对话框提示,然后就关闭窗口;但是代码只能实现弹出错误提示,无法达到超出限制次数即关闭的效果,想请各位前辈指导一下,谢谢!代码如下:
Private Sub CommandButton1_Click() '''''''系统登陆确定按钮
Application.ScreenUpdating = False
& & Sheet8.Range(&A2&).Value = Me.ComboBox1.Text
& & If Me.TextBox1.Text = Sheet8.Range(&B2&).Value Then
& &&&MsgBox &用户& & Me.ComboBox1 & & ,欢迎您使用统计表!&, vbInformation, &系统提示&
& && & UserName = Me.ComboBox1 '增加代码
& && & Application.DisplayStatusBar = True
& && & Application.StatusBar = Space(30) & &今天是 & & Format(Date, &YYYY年M月D日&) & Space(10) & &当前登录用户:& & Me.ComboBox1.Value '增加代码
& && &&&Unload Login
& && &&&Unload frmFace
& && &&&Application.Visible = True
& & Else
& && &&&n = n + 1 '增加代码
& && &If n & 3 Then
& && &&&MsgBox &密码错误,你无权使用本系统!&, vbExclamation, &系统提示&
& && &&&Unload Login
& && &&&Unload frmFace
& && &&&ThisWorkbook.Close savechanges:=False
& && &Else
& && &&&MsgBox &密码错误,请重新输入,但不能超过三次!&, vbExclamation, &系统提示&
& && && &Me.TextBox1.Value = &&
& && && &Me.TextBox1.SetFocus
& && &End If
&&End If
&&Application.ScreenUpdating = True '增加代码
End Sub复制代码
该贴已经同步到
阅读权限30
在线时间 小时
你清楚使用這個檔案的人都不會EXCEL嗎? 一是CRTL+BREAK,二是停用巨集,兩個方法已經可以不用理會這些安全設定了.
阅读权限20
在线时间 小时
& & & & & & & &
希望有路过的高手帮忙指点一下……
阅读权限90
在线时间 小时
要关闭有什么用呢,还不如EXCEL自带的密码呢,会一点VBA的可能这些就没有用了
阅读权限90
在线时间 小时
Private Sub CommandButton1_Click() '''''''系统登陆确定按钮
Application.ScreenUpdating = False
X:
Sheet8.Range(&A2&).Value = Me.ComboBox1.Text
If Me.TextBox1.Text = Sheet8.Range(&B2&).Value Then
MsgBox &用户& & Me.ComboBox1 & & ,欢迎您使用统计表!&, vbInformation, &系统提示&
UserName = Me.ComboBox1 '增加代码
Application.DisplayStatusBar = True
Application.StatusBar = Space(30) & &今天是 & & Format(Date, &YYYY年M月D日&) & Space(10) & &当前登录用户:& & Me.ComboBox1.Value '增加代码
Unload Login
Unload frmFace
Application.Visible = True
Else
n = n + 1 '增加代码
If n & 3 Then
MsgBox &密码错误,你无权使用本系统!&, vbExclamation, &系统提示&
Unload Login
Unload frmFace
ThisWorkbook.Close savechanges:=False
Else
MsgBox &密码错误,请重新输入,但不能超过三次!&, vbExclamation, &系统提示&
Me.TextBox1.Value = &&
Me.TextBox1.SetFocus
GoTo X
End If
End If
Application.ScreenUpdating = True '增加代码
End Sub
复制代码
请测试代码
阅读权限90
在线时间 小时
最好能上传个 附件
阅读权限20
在线时间 小时
& & & & & & & &
excel 禁用用这个密码就成了虚设
阅读权限20
在线时间 小时
& & & & & & & &
各种无奈……只是想要这种效果,安全暂且不谈,水平还没有到那种地步……
阅读权限20
在线时间 小时
jpj123 发表于
请测试代码
GOTO加上去不行,尝试输入一次错误密码,直接弹出3次窗口后就关闭了……
阅读权限90
在线时间 小时
你传个附件上来,帮你看看
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师CAS通过用户名与ip限制密码输入错误次数
&&&&& 之前自己通过修改源码实现了以用户名为单位限制其密码输入次数,但这样做不是很合理,如果是同一ip不同用户名呢?于是就想把也通过ip限制的功能加上。今天无意逛官网时竟然发现CAS里面有类似的功能,可以通过用户名或ip来做登录限制。没有仔细查看文档的结果就是做了一点无用功。下面介绍下开启cas限制密码输入次数的功能。有两种方法:一是把状态保存到内存中,二是通过Inspektr来管理。下面主要介绍保存到内存的方法(使用3.4.10版本的cas):
在WEB-INF\spring-configuration下创建throttleInterceptorTrigger.xml配置文件,内容如下:
&?xml version=&1.0& encoding=&UTF-8&?&
&beans xmlns=&http://www.springframework.org/schema/beans&
xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance& xmlns:p=&http://www.springframework.org/schema/p&
xsi:schemaLocation=&http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd&&
&bean id=&throttleInterceptor&
class=&org.jasig.cas.web.support.InMemoryThrottledSubmissionByIpAddressAndUsernameHandlerInterceptorAdapter&
p:failureRangeInSeconds=&120&
p:failureThreshold=&2& /&
&bean id=&throttleInterceptorJobDetail&
class=&org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean&
p:targetObject-ref=&throttleInterceptor& p:targetMethod=&decrementCounts& /&
&bean id=&periodicThrottleCleanerTrigger&
class=&org.springframework.scheduling.quartz.SimpleTriggerBean&
p:jobDetail-ref=&throttleInterceptorJobDetail& p:startDelay=&0&
p:repeatInterval=&20000& /&
其中failureThreshold为同一ip或同一用户允许错误次数
到cas-servlet.xml配置文件修改FlowHandlerMappingbean,如下:
&bean class=&org.springframework.webflow.mvc.servlet.FlowHandlerMapping& p:flowRegistry-ref=&flowRegistry& p:order=&2&&
&property name=&interceptors&&
&ref local=&localeChangeInterceptor& /&
&ref bean=&throttleInterceptor& /&
&/property&
文章评论 以下网友留言只代表其个人观点,不代表本网站的观点和立场。搜索 新闻 资讯 游戏
您现在的位置:&&>>&&>>&&>>&&>>&正文
iPhone访问限制密码破解教程&未越狱/已越狱
编辑:wangqing && 来源:网络 && 发布时间: 15:12:00
  【巴士数码】不小心忘记了iPhone访问限制密码怎么办,这里就来和大家分享一个iPhone访问限制密码破解教程,提供在未越狱、已越狱两种情况的破解方法,有需要的一起来看看吧。
  【未越狱】设备破解访问限制密码
  详细步骤如下:
  1.百度搜索并下载iBackupBot软件,然后用iTunes新备份一份设备数据。
  2.在iBackupBot里打开刚刚做好的这个备份。
  3.找到这个文件LIBRARY/PREFERENCES/COM.APPLE.SPRINGBOARD.PLIST
  4.打开此文件(如果弹出付款对话框点退出),有时候会有两个同名文件,用大的那个。
  5.找到这几行:
   &key&countryCode&/key&   &string&us&/string&   &/dict&
  在其下面输入:
   &key&SBParentalControlsPIN&/key&   &string&1234&/string&
  1234就是你的新访问限制密码
  6.做好之后保存,退出iBackupBot。
  7.在iTunes里恢复刚修改过的备份到你的设备。
  8.恢复完后进入系统,设置,通用,访问限制,输入1234,然后便可以进行更改密码或者取消操作。
  如果没有SBParentalControlsPIN按照下面已越狱的方法添加即可!
  【已越狱】设备的解决方案参考
  详细步骤如下:
  首先安装好iFile等工具软件。
  用数据线将iPhone连接电脑,用以上工具打开目录/var/mobile/Library/Preference,在这个目录下面会有一个文件,com.apple.springboard.plist文件,将这个文件拷贝到电脑中。
  然后在电脑打开该文件并找到SBParentalControlsPIN字段,就能看到密码了,是用明文保存的。
  如果没有该字段,例如iOS7系统,就不存在该字段,就需要自己添加,如下:
  *添加方法:
  还是这个文件中找到countryCode字段,这个字段肯定是有的,然后往下看,找到&/dict&字段,在这个后面添加如下内容:
   &key&SBParentalControlsPIN&/key&   &string&1234&/string&
  然后保存,将保存之后的文件,替换系统中的原来的文件,然后重启系统,下次打开访问限制时,输入密码1234即可!
扫描左侧二维码,可以订阅iPhone中文网官方微信。每天除了推送最新的苹果产品资讯,我们还将不定期举行有奖活动,广大网友可以积极参与,幸运随时会降临!当然,你也可微信搜索“iPhone中文网”或“apple4cn”,关注iPhone中文网官方微信,第一时间获取更多苹果资讯。
iOS越狱破解
苹果产品信息查询
热门新闻排行
皖公网安备05 皖网文许字[3号
TGBUS Corporation, All Rights Reserved}

我要回帖

更多关于 访问限制密码输入错误 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信