Auteur Sujet: Afficher l'écran Android sur Ubuntu via scrcpy  (Lu 166 fois)

acut3, dino et 6 Invités sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 50 120
    • Bluesky LaFibre.info
Afficher l'écran Android sur Ubuntu via scrcpy
« le: Aujourd'hui à 10:01:33 »
Je cherche à afficher l'écran mon smartphone (Pixel 6) sur mon Linux via scrcpy

1/ J'ai installé les paquets adb et, scrcpy sur mon Ubuntu 25.04 via apt (sudo apt install adb scrcpy)

2/ J'ai connecté mon Pixel 6 en USB sur mon PC et activé le débogage USB ( Paramètres ⇒ Système ⇒ Options pour développeurs ⇒ Débogage USB) et redémarré mon téléphone

3/ Je lance scrcpy ou scrcpy -w -S depuis un terminal sur mon Ubuntu, j'ai une erreur [server] ERROR: Could not invoke method

Le débogage USB est bien activé (l'erreur est bien différente quand ce n'est pas activé).

$ scrcpy
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 289.8 MB/s (41652 bytes in 0.000s)
[server] INFO: Device: Google Pixel 6 (Android 16)
[server] ERROR: Could not invoke method
java.lang.NoSuchMethodException: android.content.IClipboard$Stub$Proxy.addPrimaryClipChangedListener [interface android.content.IOnPrimaryClipChangedListener, class java.lang.String, class java.lang.String, int]
at java.lang.Class.getMethod(Class.java:2940)
at java.lang.Class.getMethod(Class.java:2440)
at com.genymobile.scrcpy.wrappers.ClipboardManager.getAddPrimaryClipChangedListener(ClipboardManager.java:128)
at com.genymobile.scrcpy.wrappers.ClipboardManager.addPrimaryClipChangedListener(ClipboardManager.java:138)
at com.genymobile.scrcpy.Device.<init>(Device.java:100)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:64)
at com.genymobile.scrcpy.Server.main(Server.java:334)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:371)
[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:278)
at com.genymobile.scrcpy.ScreenEncoder.internalStreamScreen(ScreenEncoder.java:84)
at com.genymobile.scrcpy.ScreenEncoder.streamScreen(ScreenEncoder.java:74)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:100)
at com.genymobile.scrcpy.Server.main(Server.java:334)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:371)
Caused by: java.lang.NoSuchMethodException: android.view.SurfaceControl.createDisplay [class java.lang.String, boolean]
at java.lang.Class.getMethod(Class.java:2940)
at java.lang.Class.getMethod(Class.java:2440)
at com.genymobile.scrcpy.wrappers.SurfaceControl.createDisplay(SurfaceControl.java:81)
... 7 more
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 25.0.3-1ubuntu2
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2400
WARN: Device disconnected
WARN: Killing the server...

La documentation ( https://github.com/Genymobile/scrcpy#prerequisites ) explique que sur certains téléphonnes il faut activer USB debugging (Security Settings). J'ai bien cherché, ce n'est pas proposé par mon Pixel 6.

Si vous avez une solution...

acut3

  • Abonné Sosh fibre
  • *
  • Messages: 30
Afficher l'écran Android sur Ubuntu via scrcpy
« Réponse #1 le: Aujourd'hui à 10:29:42 »
Version trop vieille probablement... 1.25 date de 2022 et on en est à la 3.3.1.

vivien

  • Administrateur
  • *
  • Messages: 50 120
    • Bluesky LaFibre.info
Afficher l'écran Android sur Ubuntu via scrcpy
« Réponse #2 le: Aujourd'hui à 10:43:58 »
La version 1.25 est celle qui est dans tous les dépôts de Linux :
- Ubuntu 25.04
- Debian SID Unstable
- Snap Store ( https://snapcraft.io/scrcpy )

Il y a bien une version non officielle : https://snapcraft.io/scrcpy-updated qui est en version 3.3.1, mais quand je la lance, j'ai une erreur :
$ scrcpy-updated.scrcpy
/snap/scrcpy-updated/118/usr/local/bin/scrcpy: error while loading shared libraries: libblas.so.3: cannot open shared object file: No such file or directory
Normalement un Snap vient avec ses dépendances...

acut3

  • Abonné Sosh fibre
  • *
  • Messages: 30
Afficher l'écran Android sur Ubuntu via scrcpy
« Réponse #3 le: Aujourd'hui à 10:51:00 »
Essaie le binaire statique officiel : https://github.com/Genymobile/scrcpy/releases/download/v3.3.1/scrcpy-linux-x86_64-v3.3.1.tar.gz (c'est l'archive listée sur https://github.com/Genymobile/scrcpy/releases/tag/v3.3.1)

La doc officielle elle-même indique que les images des dépôts Debian/Ubuntu sont obsolètes : https://github.com/Genymobile/scrcpy/blob/master/doc/linux.md

dino

  • Abonné Free adsl
  • *
  • Messages: 199
Afficher l'écran Android sur Ubuntu via scrcpy
« Réponse #4 le: Aujourd'hui à 16:12:17 »

La documentation ( https://github.com/Genymobile/scrcpy#prerequisites ) explique que sur certains téléphonnes il faut activer USB debugging (Security Settings). J'ai bien cherché, ce n'est pas proposé par mon Pixel 6.

Si vous avez une solution...


double question :
l'objectif est simplement par "curiosité", ou parce que l'écran du tel est explosé? souvent cette problématique intervient lorsque le tel s'est pris un mur..
pour l'USB debugging, je crois que c'est la traduction simple du "mode adb" à activer dans les outils développeur.. si le "adb shell" permet bien d'entrer sur l'appareil via terminal, alors normalement c'est la même chose..