I set up my phone to use a gesture based unlock, and told it to hide the unlock button. Now the gesture isn't working and I can't get past the lock screen. For the standard Android lock screen, there is a feature whereby if you enter the wrong pass code 5 times, you can press a button to enter the username and password of your Android account to reset the lock screen. Is there any way to do this, or any other way to bypass the lock screen on Cyanogenmod 7.2? I have adb shell access to the device.
-
I'd think it would work similarly provided that you have the Google apps package installed (as described in Recovering from forgotten lock pattern). Is that option unavailable to you?– eldarerathisCommented Jun 18, 2012 at 22:43
-
That's correct. The Cyanogenmod gesture lock screen has no such button available.– ChristiCommented Jun 18, 2012 at 22:50
-
Havent tried yet, but search for 'lockscreen adb settings.db'. best answer i found: rootzwiki.com/topic/8576-cm7-disable-lockscreen– ce4Commented Jun 18, 2012 at 23:18
-
Right idea, slightly different method. See below.– ChristiCommented Jun 18, 2012 at 23:31
2 Answers
The answer to this question is hideously complex. It requires ADB set up on your mobile and PC. Cyanogenmod enables adb on the device by default. Instructions for setting adb up on the PC can be found here.
With the phone connected to the PC, using a command prompt go to the directory containing adb, and start a shell. On my system the command to do this is as follows, but it may be different on yours.
cd "\Program Files (x86)\Android\android-sdk\platform-tools"
adb shell
You will then get a prompt consisting of a single # if all is well. Enter the following command:
sqlite3 /data/data/com.android.providers.settings/databases/settings.db
The prompt will then change to
sqllite>
Enter the command
select * from secure;
This will produce a list of parameters. The one you are looking for will be something like:
440|lockscreen_gestures_disable_unlock|1
The number on the left hand side is an <id> which varies from phone to phone. The next command is then
update secure set value=0 where _id=<id>;
So in this example the command would be
update secure set value=0 where _id=440;
Reboot the phone, and the unlock button will have returned and you will have access to the phone again.
-
-
@user606723 - Given the time between the questioner asking the question and answering it themselves I can only guess that while the answer doesn't look very complex, it took some considerable time to work out that relatively simple solution. Shame that you weren't around earlier to answer the question sooner. Commented Jun 20, 2012 at 22:42
-
@MarkBooth, obscure would be a much better adjective. In fact, hideously obscure would be quite accurate. :) Commented Jun 21, 2012 at 14:38
-
On my Cyanogen 7.2 device I also had the key
360|lockscreen.lockedoutpermanently|1
which needed to be set to 0.– user16286Commented Jun 24, 2012 at 15:03 -
@Mark Complex would be having to compile a modified version of the framework and pushing that. This is just plain obscure.– user13391Commented Jun 24, 2012 at 17:11
Here's how I cleared the screen lock password on my phone running CyanogenMod 11:
- Boot into TeamWin (or other adb-enabled) recovery,
- Connect the USB cable on the computer, then perform:
sudo -i
adb -d shell
mount /data
cd /data/system
rm gesture.key
rm password.key
- reboot