Scrcpy
Scrcpy (pour screen copy, copie d'écran en français) est un logiciel libre multiplate-forme (aussi disponible sur macOS et Windows) permettant d'utiliser ou de cloner l'affichage de son smartphone Android sur son ordinateur. Il propose les fonctionnalité d'un bureau à distance, mais pour visualiser ou contrôler un appareil Android : smartphone, tablette, ou smart TV.
Votre téléphone devient alors pilotable depuis votre PC. Ceci permet par exemple d'utiliser sur son PC des applications qui sont purement Android, sans faire appel à un émulateur, ou simplement de profiter du confort d'un clavier, d'une souris et d'un grand écran pour utiliser son smartphone.
Scrcpy repose sur ADB (Android Debug Bridge), il s'agit d'une fonctionnalité initialement implémentée pour les développeurs, mais présente sur tous les appareils Android.
Il est assez simple de l'utiliser avec un câble USB, et un peu plus compliqué de l'utiliser sans câble, via WiFi.
Pré-requis
- Un smartphone sous Android 5.0 ou plus.
- Un câble USB de bonne qualité permettant de relier votre smartphone a votre ordinateur.
Installation
Scrcpy utilise des fonctions natives d'Android pour fonctionner, il n'y a donc rien à installer sur son smartphone (voir par contre la note ci-dessous pour activer ces fonctions).
Il existe deux méthodes simples, au choix, pour installer Scrcpy sur Ubuntu :
- Il est disponible en deb dans les dépôts officiels APT d'Ubuntu.
Pour l'installer il suffit donc d'installer les paquetsadb
etscrcpy
.
- Scrcpy est aussi proposé de manière non-officielle en snap sur Snapcraft.
On peut donc simplement installer l'applicationscrcpy [unofficial]
depuis le centre d'applications, ou installer le paquetscrcpy
en ligne de commande :snap install scrcpy
- Sur votre téléphone : dans les paramètres (⚙) → À propos du téléphone → tapotez 7 fois sur le Numéro de build ⇒ le menu Options pour les développeurs apparaît alors :
- Retournez dans les paramètres (⚙) → Système → Options pour les développeurs → activez Débogage USB.
Utilisation simplifiée
Démarrage
- le téléphone doit être actif, comme pour une utilisation normale. L'écran doit donc être déverrouillé de la façon habituelle (code PIN, empreinte digitale, …).
- Reliez le téléphone au PC par un câble USB (pour une connexion sans câble, voir plus loin).
- Vérifiez que le débogage USB est bien actif côté téléphone.
- Lancez le logiciel (en tapant
scrcpy
ou mieuxscrcpy -w
) au terminal sur le PC, ou en cliquant sur un lanceur que vous aurez créé avec cette commande. /!\ Le téléphone peut vous poser une question pour valider la connexion : regardez l'écran du smartphone.
La réplication de l'écran de votre téléphone apparaît sur celui de votre PC, après quelques secondes.
Fonctionnement
Pour lancer une application : cliquez dessus à la souris.
Pour passer d'un écran virtuel du téléphone à un autre : faire tourner la molette de la souris.
Pour revenir à l'écran en fermant une application : cliquer sur les flèches arrières, ou plus rapidement sur Ctrl
+ molette.
Pour fermer scrcpy : clic sur le bouton de fermeture de sa fenêtre.
La vidéo est déportée d'Android vers le PC comme les autres affichages. Vous pouvez même participer à des visioconférences. L'audio reste par contre cantonnée au smartphone, en entrée comme en sortie. Ce n'est normalement pas très gênant, mais si vous souhaitez également que le son passe du téléphone au PC, vous pouvez utiliser un plugin de scrcpy, du nom de sndcpy (ce plugin n'est malheureusement pas disponible dans les dépôts d'Ubuntu).
Utilisation avancée
Les principales options de commandes
Dans un terminal, saisir la commande suivante sous Ubuntu :
scrcpy
Cette commande lance le logiciel et réplique l'écran du téléphone sur celui du PC (si l'application fonctionne correctement).
ou si vous préférez éteindre l'écran du smartphone :
scrcpy -S
Cette option (-S
) éteint l'écran du téléphone sans éteindre sa réplication sur votre écran de PC (ce qui permettrait d'économiser la batterie - cependant un smartphone se recharge lorsqu'il est connecté en USB).
L'option -w
permet d'empêcher le passage en veille du téléphone (tant qu'il est connecté à scrcpy) :
scrcpy -w
On peut cumuler ces options. Ainsi le très utile :
scrcpy -wS
laisse la réplication d'écran sur votre PC tout le temps active (pas de passage en veille du téléphone), tout en éteignant l'écran du téléphone lui même (économie d'énergie, s'il est utilisé sans câble).
Autres commandes
Cette application propose quantité de fonctionnalités.
On peut les lister avec la commande :
scrcpy --help
Voici une rapide présentation de quelques commandes utiles, additionnelles à celles déjà évoquées :
scrcpy --always-on-top
permet de mettre au premier plan la fenêtre.
scrcpy -n
permet de faire un clonage de l’écran sans pouvoir contrôler le smartphone depuis l'ordinateur.
scrcpy -K
permet d'utiliser un clavier USB.
scrcpy --record file.mp4
permet d'enregistrer l’écran de votre smartphone en l’affichant sur l’écran de l'ordinateur.
La commandescrcpy -N
s'utilise avec la commande scrcpy –record file.mp4
donc la commande est :
scrcpy --record file.mp4 -N
Elle enregistre l'écran de votre téléphone sans afficher l’écran du smartphone sur l'ordinateur.
scrcpy -f
passe l'écran de téléphone sur votre PC en plein écran.
scrcpy -t
affiche un point là où le doigt est posé sur l’écran du smartphone.
scrcpy --window-title Nom_De_La_Fenetre
permet de renommer la fenêtre.
Lanceur
À l'origine, scrcpy ne créait pas de lanceur. Désormais il en crée un, mais avec l'option de lancement par défaut "scrcpy" qui fait que la réplication s'éteint dès que l'écran du smartphone s'éteint.
Il peut être intéressant de créer un lanceur avec une option de lancement telle que -wS
qui n'éteint pas la réplication à chaque fois que l'écran du smartphone se met en veille. Pour créer votre propre lanceur, le fichier .desktop
doit ressembler à celui-ci :
[Desktop Entry] Version=1.0 Type=Application Categories=Utility Name=Téléphone - scrcpy Comment=Réplication écran Androïd sur écran PC Exec=scrcpy -wS Icon=android-file-transfer Path= Terminal=false StartupNotify=false
Vous donnez à ce fichier un nom quelconque en .desktop
, par exemple scrcpy.desktop
, et placez-le dans ~/.local/share/applications/
. Vous pouvez bien sur changer l'icône, le nom, le commentaire, les options de lancement de scrcpy, …
Raccourcis
Des raccourcis sont disponibles pour utiliser son smartphone
Ctrl+H
Il fait un retour menu.
Ctrl+B
Il fait un retour en arrière.
Ctrl+S
Il va dans le multi-tache.
Clic droit
Allume le smartphone.
Ctrl+P
Allume/Éteint le smartphone.
Ctrl+O
Éteint l’écran du smartphone.
Ctrl+R
Tourne l’écran si possible.
Ctrl+N
Ouvre le panel de notification.
Ctrl+Shift+N
Ferme le panel de notification.
Connexion sans câble
Avant d'utiliser scrcpy sans câble (WiFi) il est préférable de tester avec un câble pour voir si tout fonctionne correctement.
Pour que cette méthode fonctionne rendez vous sur Android dans les paramètres (⚙) → Système → Options pour les développeurs → activez Débogage sans fil (ou ADB par réseau sur les très anciens systèmes).
Branchez votre smartphone à votre PC via un câble, et ouvrez un terminal. Dans celui-ci, exécutez :
adb tcpip 5555
ceci indiquera au smartphone le port de connexion qui sera utilisé. Vous pouvez éventuellement choisir un autre numéro de port que 5555
.
Maintenant il faut récupérer l'IP de votre smartphone : allez dans Paramètre > Système (tout en bas) > À propos du téléphone > État > Adresse IP. Notez cette adresse (en IPV4 ou IPV6).
Vérifiez que le Wi-Fi est actif sur votre téléphone, et qu'il est connecté au même réseau qu'Ubuntu.
Connectez le smartphone avec l'instruction dans le terminal de votre PC :
adb connect address_ip_smartphone:port
(remplacez address_ip_smartphone
par la vraie adresse que vous avez notée, et port, par celui défini ci-dessus - par exemple adb connect 192.168.1.14:5555
)
Vous pouvez maintenant débrancher le câble USB reliant votre smartphone à votre PC. Vérifiez bien que le débogage USB est toujours actif sur le téléphone.
Vérifions si le téléphone est bien connecté (toujours au terminal de votre PC) :
adb devices
Le retour devrait être :
List of devices attached device_ip_address:5555 device
On peut alors lancer scrcpy de la même manière qu'avec un câble.
Pour fermer la connexion entre votre smartphone et votre PC :
adb kill-server
Pour revenir à la connexion USB :
adb usb
Problèmes courants
Pas de connexion : au terminal la commande scrcpy
renvoie des messages listés ci-dessous :
Téléphone non détecté
ERROR: "adb push" returned with value 1
ADB (qu'utilise scrcpy) ne voit pas votre téléphone. Vérifiez avec la commande
adb devices
que votre téléphone est vu par ADB. Si ce n'est effectivement pas le cas (la commande ne renvoi rien), il faut trouver la raison :
- le débogage USB est désactivé sur le smartphone.
- Si ce n'est pas cela, changez de câble USB (voir note ci-dessous).
- Si ce n'est pas cela, changez le port USB utilisé sur votre PC.
Les débits maximum (ainsi que la puissance électrique) qu'ils peuvent délivrer varient aussi énormément d'un câble à l'autre.
Il est malheureusement très courant de s'arracher les cheveux sur ce problème lorsqu'on l'ignore : un mauvais câble, même neuf et en bon état peut complètement empêcher le fonctionnement des outils tels qu'ADB, Fastboot, ou scrcpy.
Débogage USB non activé
adb: error: failed to get feature set: no devices/emulators found
l'autorisation ADB (Débogage USB) est sans doute à réactiver côté téléphone (ce qui est parfois nécessaire après chaque déconnexion du câble).
Plusieurs téléphones branchés en même temps
adb: error: failed to get feature set: more than one device/emulator
Débranchez le ou les téléphones surnuméraires.
Pour en savoir plus, voir la FAQ des problèmes rencontrés : https://github.com/Genymobile/scrcpy/blob/master/FAQ.md#adb-issues
Utilisation sous Wayland
L'utilisation sous Wayland peut poser problème. Voir : https://github.com/Genymobile/scrcpy/blob/master/FAQ.md#issue-with-wayland
Voir Aussi
- (fr) Article sur Linux.fr
- KDE Connect, un autre logiciel permettant d'échanger avec un appareil Android.
Contributeurs : Zaienj, krodelabestiole