屏幕解鎖方式一:
這種方式是目前用的比較多的方式,使用KeyguardManager 的方式來解鎖,使用這種方式比較簡便一點,但是也有一點不好的地方,它用在程序中,當程序退出機器重啟後,這種效果就沒有了,達不到長久解鎖的效果.
KeyguardManager的應用:
KeyguardManager Manger = (KeyguardManager)getSystemService(KEYGUARD_SERVICE); KeyguardLock mLock = Manager.newKeyguardLock("unlock"); mLock.disableKeyguard();
使用完成後要對它進行:
mLock.reenableKeyguard();
使用keyguardManager要在manifest中添加:
<uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
屏幕解鎖方式二:
使用這種方式,可能覺得比較麻煩一點.它來源于google的setting源碼,跟椐鎖屏的那部分源碼更改過來的,跟椐本人的實驗可行.它的好處就是它能從根本上解決鎖屏的問題.直接把目前的鎖屏方式改為none的模式;在這種情況下,不管機器重啟還是退出程序,機器都不會再鎖屏了.它的不好的地方就是因為來源于源碼,所以要在源碼中進行編譯,直接使用會出錯的情況.
下面是代碼:
private void updateUnlockMethodAndFinish(int quality, boolean disabled) { // TODO Auto-generated method stub int minQuality = mDevicePolicyManager.getPasswordQuality(null); if (quality < minQuality) { quality = minQuality; } quality = upgradeQualityForEncryption(quality); if (quality >= DevicePolicyManager.PASSWORD_QUALITY_NUMERIC) { } else if (quality == DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED) { mLockPatternUtils.clearLock(true); mLockPatternUtils.setLockScreenDisabled(disabled); } } private int upgradeQualityForEncryption(int quality) { int encryptionStatus = mDevicePolicyManager.getStorageEncryptionStatus(); boolean encrypted = (encryptionStatus == DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE) || (encryptionStatus == DevicePolicyManager.ENCRYPTION_STATUS_ACTIVATING); if (encrypted) { if (quality < DevicePolicyManager.PASSWORD_QUALITY_NUMERIC) { quality = DevicePolicyManager.PASSWORD_QUALITY_NUMERIC; } } return quality; }
使用這種方式,要獲取系統權限:
android.uid.system
屏幕解鎖方式三:
使用这种方式,可以直接在代码中使用,不需要在源码中重新build.
private void clearLock() { try { Class<?> c = Class.forName("com.android.internal.widget.LockPatternUtils"); Constructor<?>[] constructors = c.getDeclaredConstructors(); Constructor<?> constructor = constructors[0]; constructor.setAccessible(true); Object clazz = constructor.newInstance(this); Method clearLockMethod = clazz.getClass().getDeclaredMethod("clearLock", boolean.class); clearLockMethod.setAccessible(true); clearLockMethod.invoke(clazz, false); Method setLockScreenDisabledMethod = clazz.getClass().getDeclaredMethod( "setLockScreenDisabled", boolean.class); setLockScreenDisabledMethod.setAccessible(true); setLockScreenDisabledMethod.invoke(clazz, true); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } }
这种方式也需要系统权限:
android:sharedUserId="android.uid.system"
相关推荐
**jQuery Android屏幕解锁插件PatternLock详解** PatternLock是一款基于jQuery的Android风格图案解锁插件,它模拟了Android系统中的图形解锁方式,适用于Web应用程序,为用户提供了一种安全且直观的验证方式。这款...
2. **屏幕解锁的历史发展**:回顾早期的Android屏幕解锁方式,如PIN码、图案解锁,以及随着时间推移如何演变为更高级的技术。 3. **新解锁方法的原理**:详细介绍所提出的新解锁方法,可能包括其工作流程、技术实现...
在这个案例中,"jQuery Android屏幕解锁"插件提供了模拟Android设备解锁屏幕的接口,使得用户可以在网页上实现滑动解锁、图案解锁等常见Android解锁方式。 该插件的实现可能基于HTML5的Canvas元素或者SVG矢量图形,...
Android屏幕解锁图案破解 Python代码
本文将深入探讨使用jQuery插件来模拟Android屏幕解锁的功能。 首先,jQuery插件是jQuery库的一种扩展,它允许开发者创建可重用的代码模块,以增强网页的交互性和功能。在"jquery插件来模拟Android屏幕解锁.zip"这个...
**jQuery九宫格模拟Android屏幕解锁插件PatternLock详解** 在网页交互设计中,为了提供更贴近用户习惯的体验,有时我们需要将移动端Android设备的九宫格解锁方式移植到Web应用上。`PatternLock`就是一个专门为此...
Android屏幕解锁通常涉及到安全层(如PIN码、图案或指纹识别),以及系统级别的权限控制。模拟器可能需要模拟这些安全特性,提供一个接近真实的解锁体验。 总的来说,这个项目涵盖了HTML5的多个核心特性,以及...
在Android开发中,滑动解锁是一种常见的用户交互方式,它为用户提供了一种便捷且直观的设备解锁或界面切换手段。本篇文章将深入探讨Android滑动解锁的实现原理、设计模式以及如何自定义滑动解锁视图。 首先,...
Android图形解锁是Android操作系统中一种常见的用户验证方式,它通过用户在九宫格或自定义图形上绘制特定路径来解锁设备,为设备提供了便捷且安全的保护机制。这份"Android图形解锁源码.rar"正是针对这一功能的源...
国外一款jQuery仿Android系统解锁特效,用于用户登录界面时验证有效性。 具体操作方法很简单,鼠标按住不放根据提示图画出大体样式就OK了,大家试试吧。 效果详情可参考http://www.xwcms.net/js/bddm/83458.html
在Android系统中,图案解锁(九宫格解锁)是一种常见的用户认证方式,它允许用户通过在9个点之间画出特定的连线图案来解锁设备。这个功能为用户提供了一种直观且快速的解锁体验,同时也增加了安全性。下面我们将深入...
在Android平台上,手势解锁是一种常见的用户验证方式,它允许用户通过在屏幕上绘制特定的图案来解锁设备或应用。本文将深入解析"android-手势解锁源码2"中的关键技术和实现细节,帮助你理解和掌握Android手势解锁的...
在Android平台上,滑动解锁是一种常见的用户界面交互方式,它为用户提供了一种安全且直观的设备解锁手段。本文将深入探讨Android滑动解锁的实现原理,并通过分析提供的源码来阐述其关键知识点。 首先,滑动解锁的...
这种解锁方式不仅具有较高的可用性,还能提供一定程度的安全性,因为每个用户的手势路径都是独一无二的。本篇文章将深入探讨如何在Android项目中实现一个实用的手势解锁功能。 首先,我们需要理解手势解锁的基本...
Android 屏幕唤醒 + 屏幕解锁 + 开机服务监听(android.intent.action.BOOT_COMPLET)添加权限:{//开机监听<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/><uses-permission android...
在Android平台上,手势解锁是一种常见的安全机制,它允许用户通过自定义的手势路径来解锁设备或应用程序,提供了方便且个性化的解锁方式。本示例代码是针对Android平台设计的滑动手势解锁功能,类似于支付宝应用中的...
这个"Android屏幕九宫格解锁代码参考.zip"压缩包提供了一个简单的实现案例,方便开发者理解和学习如何构建这样的功能。以下是关于Android九宫格解锁的详细知识点: 1. **解锁逻辑**: 九宫格解锁的基本原理是将...
在Android系统中,屏幕锁定和解锁是用户交互的重要部分,为用户提供隐私保护和便捷操作。本文将深入探讨如何利用距离传感器实现自动锁屏和解锁功能,以提高用户体验。距离传感器通常用于检测设备是否被用户紧贴(如...
在Android平台上实现iOS风格的数字屏幕解锁是一种常见的需求,它能为用户提供熟悉的界面和操作体验。这个项目"NumberLockDemo-master"显然是一个Android应用示例,用于演示如何在Android上创建一个类似于iOS的数字...