ubuntuusers.de

SCRCPY error

Status: Gelöst | Ubuntu-Version: Ubuntu 24.04 (Noble Numbat)
Antworten |

evora

Anmeldungsdatum:
8. Februar 2010

Beiträge: 140

Ich möchte den Bildschirm vom Android-Handy auf dem PC-Bildschirm anzeigen. Ich habe die Software von adb und scrcpy auf dem PC installiert und auf dem Handy die Entwickler-Option freigeschaltet.

Der Befehl adb devices zeigt, dass das Handy mit dem PC verbunden ist.

$ adb devices
List of devices attached
29081JEGR02568	device

Beim Start von scrcpy auf dem PC erscheint folgende Fehlermeldung:

$ scrcpy
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 204.2 MB/s (41650 bytes in 0.000s)
[server] INFO: Device: Google Pixel 6a (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, class java.lang.String, int]
	at java.lang.Class.getMethod(Class.java:2950)
	at java.lang.Class.getMethod(Class.java:2450)
	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:369)
[server] ERROR: Exception on thread Thread[Thread-2,5,main]
java.lang.AssertionError: java.lang.reflect.InvocationTargetException
	at com.genymobile.scrcpy.wrappers.ServiceManager.getInputManager(ServiceManager.java:75)
	at com.genymobile.scrcpy.Device.injectEvent(Device.java:192)
	at com.genymobile.scrcpy.Device.injectKeyEvent(Device.java:203)
	at com.genymobile.scrcpy.Device.pressReleaseKeycode(Device.java:211)
	at com.genymobile.scrcpy.Device.pressReleaseKeycode(Device.java:216)
	at com.genymobile.scrcpy.Controller.control(Controller.java:66)
	at com.genymobile.scrcpy.Server$3.run(Server.java:132)
	at java.lang.Thread.run(Thread.java:1012)
Caused by: java.lang.reflect.InvocationTargetException
	at java.lang.reflect.Method.invoke(Native Method)
	at com.genymobile.scrcpy.wrappers.ServiceManager.getInputManager(ServiceManager.java:72)
	... 7 more
Caused by: java.lang.NullPointerException
	at java.util.Objects.requireNonNull(Objects.java:207)
	at android.hardware.input.InputManager.getInstance(InputManager.java:355)
	... 9 more
[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:369)
Caused by: java.lang.NoSuchMethodException: android.view.SurfaceControl.createDisplay [class java.lang.String, boolean]
	at java.lang.Class.getMethod(Class.java:2950)
	at java.lang.Class.getMethod(Class.java:2450)
	at com.genymobile.scrcpy.wrappers.SurfaceControl.createDisplay(SurfaceControl.java:81)
	... 7 more
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 24.2.8-1ubuntu1~24.04.1
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2400
WARN: Device disconnected
WARN: Killing the server...

Was muss ich tun, um den Fehler zu beheben?

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 328

Auf dem Pixel in den Entwickleroptionen "USB-Debugging (Sicherheitseinstellungen) Berechtigung und Simulation von Eingaben über USB-Debugging erlauben" aktivieren.

evora

(Themenstarter)

Anmeldungsdatum:
8. Februar 2010

Beiträge: 140

Ich habe das schon gemacht. Siehe mein erster Beitrag von evora > ... und auf dem Handy die Entwickler-Option freigeschaltet.

evora

(Themenstarter)

Anmeldungsdatum:
8. Februar 2010

Beiträge: 140

Ich habe das Handy via USB-Kabel mit dem PC verbunden. Auf dem PC habe ich ein erstes Mal scrcpy eingegeben. Dann habe ich auf dem Handy die Pop-Up-Meldung beantwortetund die Verbindung erlaubt. Dann habe auf dem PC ein zweites Mal scrcpy eingegeben und wieder die gleiche Fehlermeldung erhalten.

$ scrcpy
scrcpy 1.25 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 2.6 MB/s (41650 bytes in 0.015s)
[server] INFO: Device: Google Pixel 6a (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, class java.lang.String, int]
	at java.lang.Class.getMethod(Class.java:2950)
	at java.lang.Class.getMethod(Class.java:2450)
	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:369)
[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:369)
Caused by: java.lang.NoSuchMethodException: android.view.SurfaceControl.createDisplay [class java.lang.String, boolean]
	at java.lang.Class.getMethod(Class.java:2950)
	at java.lang.Class.getMethod(Class.java:2450)
	at com.genymobile.scrcpy.wrappers.SurfaceControl.createDisplay(SurfaceControl.java:81)
	... 7 more
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 24.2.8-1ubuntu1~24.04.1
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2400
WARN: Device disconnected
WARN: Killing the server...

Das ist die gleiche Fehlermeldung, die ich zuerst veröffentlicht habe. Der Fehlertext [server] ERROR: Could not invoke method interpretiere ich so, dass der Fehler auf in der Linux-Software auf dem PC [server] liegt.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17416

evora schrieb:

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

Vielleicht mal auf eine neuere Version updaten ...

evora

(Themenstarter)

Anmeldungsdatum:
8. Februar 2010

Beiträge: 140

Ich habe von

https://github.com/Genymobile/scrcpy/blob/master/doc/linux.md

scrcpy auf meinen PC geladen, dann die Software scrcpy-linux-x86_64-v3.2 ausgepackt und scrcpy auf dem PC gestartet. Der Bildschirm meines Handys wurde auf meinem PC dargestellt. Ich konnte das Handy vom PC aus steuern und umgekehrt Aktionen auf dem Handy auf dem PC-Bildschirm anzeigen.

Antworten |