cClaude.rocks ☕ Le blog

[Nouvelles technologies du libre, sciences et coups de gueule…]

Menu
đŸ˜€ Ce billet a Ă©tĂ© Ă©ditĂ© le : 2024-09-10

scrcpy (« screen copy ») est un logiciel gĂ©nial, libre et open source permettant de cloner l’affichage de son smartphone Android sur son ordinateur. Plus prĂ©cisĂ©ment scrcpy permet d’obtenir l’audio et la vidĂ©o de votre smartphone via USB ou TCP/IP sans nĂ©cessiter l’accĂšs root du tĂ©lĂ©phone.

Votre tĂ©lĂ©phone devient alors pilotable depuis votre PC. Cela permet par exemple d’utiliser sur son PC des applications qui sont purement Android, sans faire appel Ă  un Ă©mulateur Android.

D’autres cas d’usages :

  • Faire un tutoriel,
  • Configurer certaines applications en copiant-collant des paramĂštres.

ඏ

Prérequis sur le smartphone

  • Le smartphone doit ĂȘtre hĂ©bergĂ© le systĂšme Android (version 5.0 ou plus) ou l’un de ces dĂ©rivĂ©s.
  • Le mode dĂ©veloppeur et le mode dĂ©bogage doivent ĂȘtre activĂ©s sur le tĂ©lĂ©phone.
  • Activer le dĂ©bogage USB

    Si vous n’avez pas activĂ© le dĂ©bogage USB (mode dĂ©veloppeur / ADB) sur votre smartphone, scrcpy ne fonctionnera pas.

    Sur votre téléphone :

    • Aller dans « ParamĂštres » > « SystĂšme » > « À propos du tĂ©lĂ©phone » > et tapoter 7 fois sur le « numĂ©ro de build » : Cela permet de faire apparaĂźtre le menu « options pour dĂ©veloppeurs » apparaĂźt dans les paramĂštres.

    • Aller dans « ParamĂštres » > « SystĂšme » > « options pour dĂ©veloppeurs » > activer « dĂ©bogage USB ».

Attention, il y a quelques considĂ©rations de sĂ©curitĂ© Ă  prendre en compte lors de l’activation du dĂ©bogage USB. Ce point ne sera pas traitĂ© dans ce billet, mais c’est un vrai sujet.

À savoir

  • AprĂšs certaines mises Ă  jour majeur d’Android, vous devrez dĂ©sactiver le dĂ©bogage USB et le rĂ©activer pour celui-ci fonctionne.
  • Certaine versions d’Android dĂ©sactive (rĂ©voque) par dĂ©faut les autorisations adb pour les systĂšmes qui ne se sont pas connectĂ© depuis un certain temps (la valeur par dĂ©faut est de l’ordre de la semaine). Vous devrez donc rĂ©

ඏ

PrĂ©requis sur l’ordinateur

  • Un systĂšme Linux dĂ©rivĂ© de Debian tel que Linux Mint. L’application scrcpy tourne Ă©galement sur d’autres plateformes, mais ce ne sera pas traitĂ© par ce billet (il est probable que mise Ă  part l’installation, tout le reste fonctionne Ă  l’identique sur Windows).
  • Disposer des Droits de super utilisateur, pour l’installation de l’application et des dĂ©pendances.
  • Disposer d’une connexion internet.
  • Un cĂąble permettant de relier votre smartphone a votre ordinateur, au moins pour simplifier la premiĂšre connexion.

ඏ

Installation

En dehors de l’activation du « dĂ©bogage USB », il n’y a pas Ă  installer quoique ce soit sur le smartphone.

Sur l’ordinateur :

sudo apt install scrcpy

ඏ

Utilisation

Pour la premiÚre connexion, utilisez un cùble USB, cela sera plus simple. Depuis un terminal (« CTRL + ALT + T ») commencer par simplement :

scrcpy
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
ERROR: Could not find any ADB device
ERROR: Server connection failed
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
ERROR: Device is unauthorized:
ERROR:     -->   (usb)  XXXXXXXX                  unauthorized
ERROR: A popup should open on the device to request authorization.
ERROR: Check the FAQ: <https://github.com/Genymobile/scrcpy/blob/master/FAQ.md>
ERROR: Server connection failed
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 207.9 MB/s (41650 bytes in 0.000s)
[server] INFO: Device: XXXXXXXXXXXXXX (Android 12)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 24.0.9-0ubuntu0.1
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2336

En cas d’erreur, commencer par vous assurez-vous que :


ඏ

Utilisation avancée

Pour commencer pensez à consulter l’aide :

man scrcpy
scrcpy --help

 Quelques options utiles

  • --always-on-top : Faites en sorte que la fenĂȘtre scrcpy soit toujours au-dessus des autres fenĂȘtres.
  • -f, --fullscreen : DĂ©marre l’application en plein Ă©cran.
  • --disable-screensaver: DĂ©sactive l’économiseur d’écran, trĂšs utile si vous faite une prĂ©sentation.
  • -n,--no-control : DĂ©sactive le contrĂŽle du smartphone, mode miroir uniquement.
  • -r,--record=mon-enregistrement.mp4 : Enregistre l’écran dans un fichier. Le format est fixĂ© par l’option --record-format s’il est dĂ©fini ou par l’extension du fichier (.mp4 ou .mkv).
  • --rotation=valeur : Force la rotation initiale de l’écran. Les valeurs possibles sont 0, 1, 2 et 3. Chacune incrĂ©mente de 90° la rotation dans le sens des aiguilles d’une montre.
  • -S,---turn-screen-off : Éteint l’écran du smartphone au dĂ©marrage de scrcpy.
  • -w,--stay-awake : Garde l’appareil allumĂ© pendant que scrcpy est en cours d’exĂ©cution, lorsque l’appareil est branchĂ©.
  • --tcpip[=ip[:port]] : Configure et reconnecte l’appareil via TCP/IP. Si une adresse de destination est fournie, alors scrcpy se connecte Ă  cette adresse avant de commencer. L’appareil doit Ă©couter sur le port TCP donnĂ© (la valeur par dĂ©faut est 5555). Si aucune adresse de destination n’est fournie, alors scrcpy tente de trouver l’adresse IP de l’appareil actuel (gĂ©nĂ©ralement connectĂ© via USB), permet mode TCP/IP, puis se connecte Ă  cette adresse avant de dĂ©marrer. Une fois la connexion Ă©tablie vous pourrez retirer le cĂąble USB.
  • --window-title=text : DĂ©fini un titre de votre choix pour le titre de la fenĂȘtre.

Usages spéciaux :

  • --push-target path : Permet de dĂ©finir le rĂ©pertoire cible pour envoyer les fichiers vers l’appareil par glisser-dĂ©poser. Il est passĂ© tel quel Ă  adb push. La valeur par dĂ©faut est /sdcard/Download/. Cette option permet de modifier le comportement du « Glisser-dĂ©poser d’un fichier non-APK ».

Exemples

  • Prendre la main sur un smartphone dont on connaĂźt l’adresse IP :

La premiÚre connexion doit se faire avec le cùble USB. Utilisez :

adb tcpip 5555

puis

scrcpy --tcpip=192.168.1.73

Pour plus de dĂ©tails, voir le billet : đŸ“± « scrcpy » soucis de connexion en WIFI

  • Prendre la main sur un smartphone via la connexion USB, en plein Ă©cran sur l’ordinateur, en Ă©teignant l’écran et en dĂ©sactivant l’économiseur d’écran cĂŽtĂ© smartphone :
scrcpy -S -f --disable-screensaver # Débloquer le téléphone avant cette opération

Notez que : ALT + F permet de sortir du plein écran (voir les raccourcis)

Rappel :

  • -S,---turn-screen-off : Éteint l’écran du smartphone au dĂ©marrage de scrcpy.
  • -f, --fullscreen : DĂ©marre l’application en plein Ă©cran.
  • --disable-screensaver: DĂ©sactive l’économiseur d’écran.
  • Cas de plusieurs smartphones :

Vous aurez un message d’erreur pour vous informer qu’il y a plus d’un pĂ©riphĂ©rique : « more than one device/emulator »

Regardez la liste des pĂ©riphĂ©riques Ă  l’aide de :

adb devices
List of devices attached
8B2TE9ZM01371256    device
192.168.1.72:5555   device

Ensuite vous devrez spĂ©cifier l’identificateur choisi Ă  l’aide de :

scrcpy -s 8B2TE9ZM01371256
scrcpy -s 8B2TE9ZM01371256 --tcpip
  • Cas du son et de l’enregistrement :

Utilisez la syntaxe suivante :

scrcpy --tcpip=192.168.1.73 --record=mon-enregistrement.mp4

Mais pour cela vous devez avoir une version ≄ 2 de srccopy.

A priori, la capture du son ne fonctionne comme attendu avec une version < 2

Pour récupérer votre numéro de version :

scrcpy -v

Note : la version actuellement disponible dans les dépÎts Debian est trop ancienne.

Pour faire fonctionner ce qui est dessous, vous devrez vous inspirer de Install Latest version.

scrcpy 1.25 <https://github.com/Genymobile/scrcpy>

Dependencies (compiled / linked):
 - SDL: 2.28.2 / 2.30.0
 - libavcodec: 60.3.100 / 60.31.102
 - libavformat: 60.3.100 / 60.16.100
 - libavutil: 58.2.100 / 58.29.100
 - libavdevice: 60.1.100 / 60.3.100
 - libusb: - / 1.0.27

 Les raccourcis

Dans la liste suivante, MOD est le modificateur de raccourci. Par dĂ©faut, c’est Alt (Ă  gauche de la barre espace) ou Super, mais il peut ĂȘtre configurĂ© par --shortcut-mod.

  • MOD + f : Passe en plein Ă©cran.
  • MOD + Left : Rotation de l’écran Ă  gauche.
  • MOD + Right : Rotation de l’écran Ă  droite.
  • MOD + g : Redimensionner la fenĂȘtre Ă  1:1 (pixel parfait).
  • MOD + w ou Double-clic sur les bords noirs : Redimensionner la fenĂȘtre pour supprimer les bordures noires.
  • MOD + h ou Home ou clic-du-milieu : Simule un clic sur HOME.
  • Right-click (lorsque l’écran est Ă©teint) : Allume l’écran.
  • MOD + o : Éteint l’écran de l’appareil (mais pas sur l’ordinateur).
  • MOD + Shift + o : Allume l’écran de l’appareil.
  • MOD + r : Tourne l’écran de l’appareil.
  • MOD + n : DĂ©veloppe le panneau de notification.
  • MOD + Shift + n : RĂ©duire le panneau de notification.
  • MOD + c : Copier dans le presse-papier (injecte le keycode COPY, Android â©Ÿ 7).
  • MOD + x : Couper dans le presse-papier (injecte le keycode CUT, Android â©Ÿ 7).
  • MOD + v : Copie contenu du presse-papier de l’ordinateur vers le smartphone, et le colle (injecte le keycode PASTE, Android â©Ÿ 7)
  • MOD + Shift + v : Injecter le texte du presse-papiers de l’ordinateur sous la forme d’une sĂ©quence d’évĂ©nements clĂ©s.
  • MOD + i : Activer/dĂ©sactiver le compteur FPS (imprime le nombre d’images/seconde dans le journal).
  • Ctrl + « cliquer et dĂ©placer » : Pincez pour zoomer depuis le centre de l’écran.
  • Glisser-dĂ©poser un fichier APK : Installe le fichier APK depuis l’ordinateur sur le smartphone.
  • Glisser-dĂ©poser un fichier non-APK : Copier le fichier sur le smartphone (voir --push-target).

Simulation d’actions sur le tĂ©lĂ©phone :

  • MOD + b ou MOD + Backspace ou clic-droit (lorsque l’écran est allumĂ©) : Simule un clic sur BACK.* MOD + s : Simule un clic sur APP_SWITCH.
  • MOD + m : Simule un clic sur MENU.
  • MOD + Up : Simule un clic sur VOLUME_UP.
  • MOD + Down : Simule un clic sur VOLUME_DOWN.
  • MOD + p : Simule un clic sur POWER (allume ou Ă©teint l’écran).

ඏ

Liens

኿


â„č 2006 - 2024 | 🏠 Accueil du domaine | 🏡 Accueil du blog