Can I use an Android from a PC ?
2026, Febrer - Huawei Mate 20, model LYA-L29 -> taca grisa a la pantalla ...
Prompt Gemini :
I have an Android Smartphone who got hit and now a dark cloud is extending slowly on the screen.
Is there any way I can use it remotely as a computer (or a phone) ?
That "dark cloud" is a telltale sign of an internal ink leak (common in OLED screens) or a bleeding LCD.
Since the ink spreads over time, your screen will likely be completely black soon.
The hardware solution (USB-C to HDMI)
If your phone is a flagship model (like a Samsung S-series, Google Pixel 8 or newer, or OnePlus), it likely supports DisplayPort Alt Mode.
How it works: plug a USB-C to HDMI adapter (or a multi-port hub) into your phone and connect it to a monitor or TV.
If you use a hub with USB ports, you can plug in a standard mouse and keyboard to navigate if your touch screen is also failing.
The software solution - scrcpy
If your phone doesn't support HDMI output but you have "USB Debugging" enabled in the settings, you can use a free, open-source tool called "scrcpy".
What it does: it mirrors your phone screen to your PC/Mac via a USB cable and allows you to click and type using your computer's peripherals.
Why it's great: it's lightweight and requires no app installation on the phone itself.
How to install scrcpy
On Minie, use "Software Manager" to get Version1.21-1 {20260209}
This application provides display and control of Android devices connected on USB (or over TCP/IP). It does not require any root access.
This package contains the client (desktop) binary.
sebas@minie:~$ scrcpy -v
scrcpy 1.21 <https://github.com/Genymobile/scrcpy>
scrcpy 1.21
dependencies:
- SDL 2.0.16
- libavcodec 58.134.100
- libavformat 58.76.100
- libavutil 56.70.100
- libavdevice 58.13.100
How to use scrcpy
sebas@minie:~$ scrcpy
scrcpy 1.21 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed. 0.7 MB/s (39473 bytes in 0.056s)
[server] INFO: Device: Xiaomi 23076RN8DY (Android 15)
[server] ERROR: Could not invoke method
java.lang.NoSuchMethodException: android.content.IClipboard$Stub$Proxy.addPrimaryClipChangedListener [interface android.content.IOnPrimaryClipChangedListener, class java.lang.String, int]
at java.lang.Class.getMethod(Class.java:2934)
at java.lang.Class.getMethod(Class.java:2434)
at com.genymobile.scrcpy.wrappers.ClipboardManager.getAddPrimaryClipChangedListener(ClipboardManager.java:103)
at com.genymobile.scrcpy.wrappers.ClipboardManager.addPrimaryClipChangedListener(ClipboardManager.java:111)
at com.genymobile.scrcpy.Device.<init>(Device.java:93)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:63)
at com.genymobile.scrcpy.Server.main(Server.java:309)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:404)
[server] ERROR: Could not invoke method
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.genymobile.scrcpy.wrappers.InputManager.injectInputEvent(InputManager.java:36)
at com.genymobile.scrcpy.Device.injectEvent(Device.java:180)
at com.genymobile.scrcpy.Device.injectKeyEvent(Device.java:191)
at com.genymobile.scrcpy.Device.pressReleaseKeycode(Device.java:199)
at com.genymobile.scrcpy.Device.pressReleaseKeycode(Device.java:204)
at com.genymobile.scrcpy.Controller.control(Controller.java:60)
at com.genymobile.scrcpy.Server$3.run(Server.java:125)
at java.lang.Thread.run(Thread.java:1563)
Caused by: java.lang.SecurityException: Injecting input events requires the caller (or the source of the instrumentation, if any) to have the INJECT_EVENTS permission.
at android.os.Parcel.createExceptionOrNull(Parcel.java:3255)
at android.os.Parcel.createException(Parcel.java:3239)
at android.os.Parcel.readException(Parcel.java:3222)
at android.os.Parcel.readException(Parcel.java:3164)
at android.hardware.input.IInputManager$Stub$Proxy.injectInputEvent(IInputManager.java:1519)
... 9 more
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.input.InputManagerService.injectInputEventToTarget(InputManagerService.java:929)
at com.android.server.input.InputManagerService.injectInputEvent(InputManagerService.java:916)
at android.hardware.input.IInputManager$Stub.onTransact(IInputManager.java:713)
at android.os.Binder.execTransactInternal(Binder.java:1507)
at android.os.Binder.execTransact(Binder.java:1451)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 23.2.1-1ubuntu3.1~22.04.3
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2456
WARN: Device disconnected
[server] ERROR: Exception on thread Thread[main,5,main]
java.lang.AssertionError: java.lang.NoSuchMethodException: android.view.SurfaceControl.createDisplay [class java.lang.String, boolean]
at com.genymobile.scrcpy.wrappers.SurfaceControl.createDisplay(SurfaceControl.java:83)
at com.genymobile.scrcpy.ScreenEncoder.createDisplay(ScreenEncoder.java:229)
at com.genymobile.scrcpy.ScreenEncoder.internalStreamScreen(ScreenEncoder.java:75)
at com.genymobile.scrcpy.ScreenEncoder.streamScreen(ScreenEncoder.java:65)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:93)
at com.genymobile.scrcpy.Server.main(Server.java:309)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:404)
Caused by: java.lang.NoSuchMethodException: android.view.SurfaceControl.createDisplay [class java.lang.String, boolean]
at java.lang.Class.getMethod(Class.java:2934)
at java.lang.Class.getMethod(Class.java:2434)
at com.genymobile.scrcpy.wrappers.SurfaceControl.createDisplay(SurfaceControl.java:81)
... 7 more
WARN: Killing the server...
Old version of scrcpy - Android changed its internal code (specifically how it handles the clipboard and screen mirroring),
which is causing those java.lang.NoSuchMethodException errors.
To fix this, you need to update "scrcpy" to at least version 2.0 or higher (the current version is 3.0+).
Lets use snapd to install latest "scrcpy" - use these commands :
sudo apt update
sudo apt install snapd
# You may need to log out and back in, or restart to refresh your PATH
sudo snap install core
sudo snap install scrcpy
Lets go :
sebas@minie:~$ sudo apt update
Err:3 https://deb.opera.com/opera-stable stable InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 11EE8C00B693A745
W: An error occurred during the signature verification.
The repository is not updated and the previous index files will be used.
GPG error: https://deb.opera.com/opera-stable stable InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 11EE8C00B693A745
sudo rm -f /etc/apt/sources.list.d/opera*.list # to remove this error
Lets install snapd under Minie :
sebas@minie:~$ sudo apt install snapd
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package snapd is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'snapd' has no installation candidate
No podem instalar "snapd" a Minie, per lo qual no podem posar el darrer "scrcpy" per aquesta via
Lets not "use snapd" :
sudo apt install ffmpeg libsdl2-2.0-0 adb wget gcc git pkg-config meson ninja-build libavcodec-dev libavformat-dev libavutil-dev libswresample-dev libusb-1.0-0-dev libsdl2-dev
cd ~/Downloads
mkdir -p builds
cd builds
git clone https://github.com/Genymobile/scrcpy
Cloning into 'scrcpy'...
remote: Enumerating objects: 42934, done.
remote: Counting objects: 100% (482/482), done.
remote: Compressing objects: 100% (95/95), done.
remote: Total 42934 (delta 441), reused 387 (delta 387), pack-reused 42452 (from 2)
Receiving objects: 100% (42934/42934), 7.87 MiB | 5.79 MiB/s, done.
Resolving deltas: 100% (28210/28210), done.
cd scrcpy
./install_release.sh
id not find CMake 'cmake'
Found CMake: NO
Run-time dependency libavdevice found: NO (tried pkgconfig)
app/meson.build:124:4: ERROR: Dependency "libavdevice" not found, tried pkgconfig
A full log can be found at /home/sebas/Downloads/builds/scrcpy/build-auto/meson-logs/meson-log.txt
sudo apt update && sudo apt install cmake libavdevice-dev libavfilter-dev libusb-1.0-0-dev
rm -rf build-auto
./install_release.sh
scrcpy 3.3.4
Conectem R12 per cable i :
sebas@minie:~$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 0b38:0003 Gear Head Keyboard
Bus 003 Device 004: ID 13d3:3567 IMC Networks Wireless_Device
Bus 003 Device 003: ID 2357:0138 TP-Link 802.11ac NIC
Bus 003 Device 002: ID 04f2:0939 Chicony Electronics Co., Ltd Amazon Basics mouse
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2717:ff08 Xiaomi Inc. Redmi Note 3 (ADB Interface)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
sebas@minie:~$ adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
7abd2e16e636 unauthorized
sebas@minie:~$ adb shell svc usb setFunctions mtp
setCurrentFunctions opId:1 # apareix la carpeta "Redmi 12 5G" a l'escriptori de Minie
sebas@minie:~$ scrcpy
scrcpy 3.3.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO: --> (usb) 7abd2e16e636 device 23076RN8DY
/usr/local/share/scrcpy/scrcpy-server: 1 file pushed. 15.9 MB/s (90980 bytes in 0.005s)
[server] INFO: Device: [Xiaomi] Redmi 23076RN8DY (Android 15)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 23.2.1-1ubuntu3.1~22.04.3
INFO: Trilinear filtering enabled
INFO: Texture: 1080x2456
[server] INFO: Retrying with -m1920...
[server] ERROR: Capture/encoding error: java.lang.IllegalArgumentException:
INFO: Texture: 840x1920
[server] ERROR: Injecting input events requires the caller (or the source of the instrumentation, if any) to have the INJECT_EVENTS permission.
[server] ERROR: Make sure you have enabled "USB debugging (Security Settings)" and then rebooted your device.
apareix l'escriptori del Redmi12 al Minie
Solucio error : activar "USB debugging (Security settings)" - es diferent de "USB debugging"
Disable permission monitoring (verify it is ON) - not found
Verify apps over USB (try turning it OFF) - OK
Prova
sebas@minie:~$ scrcpy --keyboard=uhid --mouse=uhid
scrcpy 3.3.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO: --> (usb) 7abd2e16e636 device 23076RN8DY
/usr/local/share/scrcpy/scrcpy-server: 1 file pushed. 21.6 MB/s (90980 bytes in 0.004s)
[server] INFO: Device: [Xiaomi] Redmi 23076RN8DY (Android 15)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 23.2.1-1ubuntu3.1~22.04.3
INFO: Trilinear filtering enabled
INFO: Texture: 1080x2456
[server] INFO: Retrying with -m1920...
[server] ERROR: Capture/encoding error: java.lang.IllegalArgumentException:
INFO: Texture: 840x1920
INFO: Texture: 1920x840
Cursor is captive in Android App screen :
The "Magic" Keys
Press Alt (the left one): By default, this is the "shortcut modifier" in scrcpy.
Alt + f: Toggles full-screen (if you are in it).
Alt + g: Toggles the "grab" mode (this is likely what you need to release the mouse).
The "Emergency" exit: Just press Ctrl + c in the terminal where you launched scrcpy to kill the process and get your mouse back instantly.
How to prevent this "Captivity"
Since you are using a MINIE and don't have a SIM card, you need uhid, but you don't want to be a prisoner of the window.
You can run scrcpy with a "hover" configuration so it only grabs the mouse when you actually click inside the window.
Try launching it like this next time:
scrcpy --keyboard=uhid --mouse=uhid --shortcut-mod=lctrl,lalt -> "Alt" + "Tab" to exit App screen
Et voilà !
Remote Access Apps
If your screen is still partially visible and touch still works, install these immediately before the "cloud" takes over:
Method Best For... Requirement
TeamViewer / AnyDesk Remote control from anywhere. App must be installed and "Unattended Access" set up.
Google "Find My Device" Emergency lock or wipe. Logged into Google account.
KDE Connect / AirDroid File transfer and SMS from PC. Both devices on the same Wi-Fi.
Immediate Next Steps
- back up your photos: connect the phone to a PC via USB immediately and set the USB mode to "File Transfer" while you can still see enough to tap "Allow."
- unlock the SIM: if you restart the phone and have a SIM PIN, you might get locked out of the network. Disable the SIM PIN now if possible.
- check for "Smart Lock": if you are at home, ensure your home is a "Trusted Place" in settings so the phone stays unlocked, making it easier for recovery tools to access it.
How to disable SIM pin
Step-by-Step Instructions
- open Settings.
- go to Security (on some EMUI versions, it might be under Security & privacy) / search for "lock sim"
- tap on More settings.
- tap on Set SIM 1 lock (or Encryption and credentials > Set SIM lock depending on your specific update).
- toggle the switch for Lock SIM card to the OFF position.
- crucial: You will be prompted to enter your current SIM PIN to confirm the change.
How to keep phone unlocked
Use "Smart Lock" (best for Home)
This is the most reliable method. It keeps the phone unlocked as long as it is in a "trusted" situation.
- go to Settings > Security > Smart Lock.
- enter your current PIN/Pattern.
- choose Trusted places: Add your home address. The phone will stay unlocked as long as you are there. {???}
The "Stay Awake" developer hack
Since you already enabled Developer Options, you can use a "god mode" setting that prevents the screen from ever turning off while the phone is charging.
- go to Settings > System & updates > Developer options {Redmi 12 : Settings -> Additional Settings}
- find and toggle Stay awake (Screen will never sleep while charging).
- keep your phone plugged into your PC or a wall charger. The screen (and the internal "session") will stay active indefinitely.
How to enable "Developer Options" @ Huawei Mate 20
- open Settings
- scroll to the very bottom and tap System & updates (or just System on older versions).
- tap About phone.
- find the Build number and tap it 7 times quickly.
Note: You may be asked to enter your lock screen PIN/Pattern after the 7th tap.
- you will see a toast notification saying: "You are now a developer!"
- go back one screen, and you will now see a new menu item called Developer options.
Critical Settings for Remote Use
Once you are in the Developer options menu, toggle these two settings immediately:
- USB Debugging: this is mandatory if you want to use tools like "scrcpy" to control your phone from a PC.
- "Allow ADB debugging in charge only mode": Huawei phones often block debugging unless this specific toggle is also turned on.
Redmi 12 : remove initial "select a pattern"
Easy :
- Settings -> "Screen Lock" -> "Fingerprints, face data and screen lock"
- set "Screen Lock" to "Off"
Redmi 12 : remove "sleep"
Also "Lock Screen" -> Sleep -> "Never sleep"
Redmi 12 : power on sequence
- message "USB debugging is ON"
- message "USB - no data transfer" -> select "File Transfer"
ADB at PC
ADB details
sebas@minie:~$ adb
Android Debug Bridge version 1.0.41
Version 28.0.2-debian
Installed as /usr/lib/android-sdk/platform-tools/adb
global options:
-a listen on all network interfaces, not just localhost
-d use USB device (error if multiple devices connected)
-e use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)
-t ID use device with given transport id
-H name of adb server host [default=localhost]
-P port of adb server [default=5037]
-L SOCKET listen on given socket for adb server [default=tcp:localhost:5037]
general commands:
devices [-l] list connected devices (-l for long output)
help show this help message
version show version num
networking:
connect HOST[:PORT] connect to a device via TCP/IP [default port=5555]
disconnect [HOST[:PORT]]
disconnect from given TCP/IP device [default port=5555], or all
forward --list list all forward socket connections
forward [--no-rebind] LOCAL REMOTE
forward socket connection using:
tcp:<port> (<local> may be "tcp:0" to pick any open port)
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
forward --remove LOCAL remove specific forward socket connection
forward --remove-all remove all forward socket connections
ppp TTY [PARAMETER...] run PPP over USB
reverse --list list all reverse socket connections from device
reverse [--no-rebind] REMOTE LOCAL
reverse socket connection using:
tcp:<port> (<remote> may be "tcp:0" to pick any open port)
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
reverse --remove REMOTE remove specific reverse socket connection
reverse --remove-all remove all reverse socket connections from device
file transfer:
push [--sync] LOCAL... REMOTE
copy local files/directories to device
--sync: only push files that are newer on the host than the device
pull [-a] REMOTE... LOCAL
copy files/dirs from device
-a: preserve file timestamp and mode
sync [all|data|odm|oem|product_services|product|system|vendor]
sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
-l: list but don't copy
shell:
shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND...]
run remote shell command (interactive shell if no command given)
-e: choose escape character, or "none"; default '~'
-n: don't read from stdin
-T: disable PTY allocation
-t: force PTY allocation
-x: disable remote exit codes and stdout/stderr separation
emu COMMAND run emulator console command
app installation (see also `adb shell cmd package help`):
install [-lrtsdg] [--instant] PACKAGE
push a single package to the device and install it
install-multiple [-lrtsdpg] [--instant] PACKAGE...
push multiple APKs to the device for a single package and install them
install-multi-package [-lrtsdpg] [--instant] PACKAGE...
push one or more packages to the device and install them atomically
-r: replace existing application
-t: allow test packages
-d: allow version code downgrade (debuggable packages only)
-p: partial application install (install-multiple only)
-g: grant all runtime permissions
--instant: cause the app to be installed as an ephemeral install app
--no-streaming: always push APK to device and invoke Package Manager as separate steps
--streaming: force streaming APK directly into Package Manager
--fastdeploy: use fast deploy
--no-fastdeploy: prevent use of fast deploy
--force-agent: force update of deployment agent when using fast deploy
--date-check-agent: update deployment agent when local version is newer and using fast deploy
--version-check-agent: update deployment agent when local version has different version code and using fast deploy
--local-agent: locate agent files from local source build (instead of SDK location)
uninstall [-k] PACKAGE
remove this app package from the device
'-k': keep the data and cache directories
backup/restore:
to show usage run "adb shell bu help"
debugging:
bugreport [PATH]
write bugreport to given PATH [default=bugreport.zip];
if PATH is a directory, the bug report is saved in that directory.
devices that don't support zipped bug reports output to stdout.
jdwp list pids of processes hosting a JDWP transport
logcat show device log (logcat --help for more)
security:
disable-verity disable dm-verity checking on userdebug builds
enable-verity re-enable dm-verity checking on userdebug builds
keygen FILE
generate adb public/private key; private key stored in FILE,
scripting:
wait-for[-TRANSPORT]-STATE
wait for device to be in the given state
STATE: device, recovery, rescue, sideload, bootloader, or disconnect
TRANSPORT: usb, local, or any [default=any]
get-state print offline | bootloader | device
get-serialno print <serial-number>
get-devpath print <device-path>
remount [-R]
remount partitions read-write. if a reboot is required, -R will
will automatically reboot the device.
reboot [bootloader|recovery|sideload|sideload-auto-reboot]
reboot the device; defaults to booting system image but
supports bootloader and recovery too. sideload reboots
into recovery and automatically starts sideload mode,
sideload-auto-reboot is the same but reboots after sideloading.
sideload OTAPACKAGE sideload the given full OTA package
root restart adbd with root permissions
unroot restart adbd without root permissions
usb restart adbd listening on USB
tcpip PORT restart adbd listening on TCP on PORT
internal debugging:
start-server ensure that there is a server running
kill-server kill the server if it is running
reconnect kick connection from host side to force reconnect
reconnect device kick connection from device side to force reconnect
reconnect offline reset offline/unauthorized devices to force reconnect
environment variables:
$ADB_TRACE
comma-separated list of debug info to log:
all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
$ADB_VENDOR_KEYS colon-separated list of keys (files or directories)
$ANDROID_SERIAL serial number to connect to (see -s)
$ANDROID_LOG_TAGS tags to be used by logcat (see logcat --help)
$ADB_LOCAL_TRANSPORT_MAX_PORT max emulator scan port (default 5585, 16 emus)
connecting R12 to Minie
At Minie :
sebas@minie:~$ adb --version
Android Debug Bridge version 1.0.41
Version 28.0.2-debian
Installed as /usr/lib/android-sdk/platform-tools/adb
connecting R12 to Minie
Cable connected but nothing happens - see if Linux "sees" the phone :
sebas@minie:~$ lsusb
Bus 001 Device 002: ID 2717:ff40 Xiaomi Inc. Mi/Redmi series (MTP) <<< 2717 is the vendor ID for Xiaomi
See if ADB sees the phone :
sebas@minie:~$ adb devices
List of devices attached
7abd2e16e636 device
ADB to set MTP = Media Transfer Protocol
On phone : force "File Transfer / Android Auto" mode -> swipe down the notification shade on your Redmi
On PC - we want it without sceen :
sebas@minie:~$ adb shell svc usb setFunctions mtp
setCurrentFunctions opId:1
ADB to set timeout
To set it to 24 h (86.400.000 seconds)
adb shell settings put system screen_off_timeout 86400000
ADB to read the timeout
The meaning of the value is
Output Value Human-Readable Time
15000 15 Seconds
30000 30 Seconds
60000 1 Minute
300000 5 Minutes
600000 10 Minutes
86400000 24 Hours (The "Hack" value)
2147483647 ~24.8 Days (The maximum possible 32-bit integer)
sebas@minie:~$ adb shell settings get system screen_off_timeout
* daemon not running; starting now at tcp:5037
* daemon started successfully
error: no devices/emulators found
adb shell settings get system screen_off_timeout
Enable "USB debugging" :
- Go to Settings > Additional Settings > Developer Options.
- Enable USB Debugging.
My value is :
sebas@minie:~$ adb shell settings get system screen_off_timeout
2147483000
connecting R12 to T60
Lets try T60 - here are the versions
sebastia@t60:~$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.4 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.4 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
install adb on T60
sebastia@t60:~$ adb -v
Command 'adb' not found, but can be installed with:
sudo apt install adb
So we have
sebastia@t60:~$ adb --version
Android Debug Bridge version 1.0.39
Version 1:8.1.0+r23-5~18.04
Installed as /usr/lib/android-sdk/platform-tools/adb
install scrcpy on T60
sebastia@t60:~$ scrcpy -v
Command 'scrcpy' not found, but can be installed with:
sudo snap install scrcpy
"scrcpy" not available in your current APT repositories :
sebastia@t60:~$ apt search scrcpy
Sorting... Done
Full Text Search... Done
Lets use "snap"
sebastia@t60:~$ sudo snap install scrcpy
[sudo] password for sebastia:
Sorry, try again.
[sudo] password for sebastia:
scrcpy v1.25-1-g4c43784f from sisco311 installed
So we have
sebastia@t60:~$ scrcpy -v
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
Per Ubuntu 18.04 no podem pujar mes - Ubuntu 22.04 requereix CPU de 64 bits.
No podem instalar "scrcpy" de versio 2.0 a T60
Prover desesperadament conectem R12 per cable a T60 :
sebastia@t60:~$ lsusb
Bus 001 Device 005: ID 2717:ff08
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
sebastia@t60:~$ adb devices
List of devices attached
7abd2e16e636 device
Set MTP manually of fm ADB :
sebas@minie:~$ adb shell svc usb setFunctions mtp
setCurrentFunctions opId:1
Try :
sebastia@t60:~$ scrcpy
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
Segmentation fault
La versio 1.25 de "scrcpy" no corre a T60
connecting Huawei mate 20 pro to Minie
- model LYA-L29
- versio EMUI 12.0.0
- procesador Huawei Kirin 980
- RAM 6 GB
- internal storage 128 GB (31 GB free)
- Resolution 3120 x 1440
- posar Android en angles
open Settings → System & Updates → tap Language & Input → tap Language & Region → tap Add a language (or just Languages) → select English
- aturar Notificacions : Settings → Notifications → Manage all → disable one by one
- enable Developer Options (Settings > System & updates )
- "Screen lock" - require you phone to be unlocked before using it := "off"
- "Stay awake" - keep screen on when charging := "on"
- engegar "USB Debugging" := "on" ;
- engegar "Allow ADB debugging in charge only mode" := "on"
- Select USB configuation :
- charge only
- Media Transfer Protocol (MTP) := "on"
- Picture Transfer Protocol (PTP)
- RNDIS (USB Ethernet)
- Audio source
- MIDI
- unlock the SIM / disable SIM pin
Settings → Security → tap "More settings" → tap Set up SIM card lock (or SIM card lock settings) → select the SIM you want (if you have dual SIM) → turn Lock SIM card OFF
Enter your current SIM PIN to confirm
No SIM present -> "Setu up SIM lock" is gray
- use "Smart Lock" (Settings → Security & Privacy → Screen Lock & Password) → Trusted places (e.g. home)
"Change unlock method"
- disable "Discover"- long-press any empty space on your home screen. Tap "Home screen settings". "Smart assistant" → "Feed" set to "None"
Power off+on 20260221 + carregador → no lock (AFAIK)
bits, tips and tricks on "adb devices" for Huawei mate 20
- hidden engineering menu that can override USB behavior.
Open the Phone/Dialer app on your LYA-L29. Dial *#*#2846579#*#*
go to Background Settings > USB Port Settings.
available values are "default mode", "manufacturer mode", "hisuite mode" (no google mode)
- "USB debugging" is gray ? -> "Revoke USB debugging authorizations"
- fitxer que hem fet
sebas@minie:/etc/udev/rules.d$ cat 51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev"