I have many working android cellphones with broken touchscreen but with a working screen and I would like to use them as computing device and/or additional screen. Is there a way to do that?
-
1Also see our broken-screen tag wiki ;) – Izzy Mar 29 '20 at 10:50
1 Answers
Provided your device has an unlockable bootloader and a custom recovery (I strongly advice against buying devices which are artificially destined to become useless, that should be prohibited by law), you should.
In any case I advice anyone worrying their device could break anytime to already have unlocked bootloader and activated wifi and adb (through network, if worrying about usb port breaking) at boot. Remember that if you are unlocking your bootloader for the first time doing so WILL DELETE all userdata and if you are not in Europe it could void your warranty.
First of all, proceed to install fastboot
and adb
on your pc, connect the device to the pc and then
- unlock fastboot (the bootloader) on the device and flash the TWRP custom recovery (if no custom recovery is available you could somehow extract your base recovery image and enable adb and root access editing its
default.prop
); - boot recovery and open a shell with
adb shell
; - find
system
anduserdata
(and probablyboot
) partitions withfdisk -l /dev/block/mmcblk0
; - mount
system
withmount -t ext4 <system_partition_file> <mountpoint>
); enabling debug is unnecessary cumbersome if you didn't have already enabled it.
First try adding the following into
system
'sbuild.prop
:ro.secure=0 ro.debuggable=1 persist.service.adb.enable=1
If that didn't work, you could try switching to
1
theadb_enabled
setting in<data_partition_mount_point>/system/users/0/settings_global.xml
.If even that didn't work, then you have to rebuild your
boot
image, properly editing thedefault.prop
file to enable adb and then switching theadb_enabled
setting like above.You can find information on how to do that here (keep in mind that it will probably require device-specific information like
kernel_offset
,ramdisk_offset
,second_offset
andtags_offset
so you have to find those somewhere first).- unmount
system
and mountuserdata
; - add your adb server public key (placed into
~/.android/adbkey.pub
) intouserdata
's/misc/adb/adb_keys
(with a text editor or any other means) to skip device confirmation; - umount
userdata
and reboot the device;
- unmount
Now that you can connect through adb, install scrcpy
on your operating system and use the device remotely from your computer.
And if like me you forgot your pin code, you can disable it by moving the files starting with locksettings
from /data/system
.
Remember that if you are using file-based encryption, moving or directly changing the pin in the sqlite3 database with
UPDATE locksettings SET value = '1' WHERE name = 'lockscreen.disabled';
will make your encrypted file inaccessible.
References
- Obtaining root by modifying default.prop(ro.… | Android Development and Hacking
- How to authorize and accept ADB RSA key with broken touch screen on Android - Stack Overflow
- android - 'adb devices' says unauthorized in TWRP - Stack Overflow
- Remove /Bypass Lockscreen With Recovery | Android Development and Hacking
- java - Set lockscreen to "None" programmatically? - Stack Overflow

- 147
- 9
-
1i follow your philosophy (and i do so on my own device), however there are good reasons to keep bootloader locked. also i don't recommend modified build.prop (scrcpy doesn't require root permissions). you should add some warnings about security risks (for example deleting locksettings.db breaks FBE and causes data loss) – alecxs Mar 30 '20 at 16:55
-
Added a disclaimer about unlocking bootloader.
Sorry about FBE, I forgot to mention it because I stopped using it on android because last time I was encrypting my phone the phone rebooted half-way destroying the userdata partition.
– Scrooge McDuck Apr 01 '20 at 09:29