Genymobile / scrcpy

Display and control your Android device
Apache License 2.0
104.38k stars 10.16k forks source link

Unable to rotate screen via mod+r #4839

Closed HiramTheHero closed 2 months ago

HiramTheHero commented 2 months ago

Environment

Describe the bug When pressing mod+r to rotate the screen, I get the following error:

[server] INFO: Device rotation requested: landscape
[server] ERROR: Could not invoke method
java.lang.NoSuchMethodException: android.view.IWindowManager$Stub$Proxy.freezeRotation [int]
    at java.lang.Class.getMethod(Class.java:2937)
    at java.lang.Class.getMethod(Class.java:2449)
    at com.genymobile.scrcpy.wrappers.WindowManager.getFreezeRotationMethod(WindowManager.java:48)
    at com.genymobile.scrcpy.wrappers.WindowManager.freezeRotation(WindowManager.java:111)
    at com.genymobile.scrcpy.Device.rotateDevice(Device.java:372)
    at com.genymobile.scrcpy.Controller.handleEvent(Controller.java:205)
    at com.genymobile.scrcpy.Controller.control(Controller.java:97)
    at com.genymobile.scrcpy.Controller.lambda$start$0$com-genymobile-scrcpy-Controller(Controller.java:105)
    at com.genymobile.scrcpy.Controller$$ExternalSyntheticLambda1.run(Unknown Source:4)
    at java.lang.Thread.run(Thread.java:1012)

Prior screen orientation is irrelevant.

[server] INFO: Device rotation requested: portrait
[server] ERROR: Could not invoke method
java.lang.NoSuchMethodException: android.view.IWindowManager$Stub$Proxy.freezeRotation [int]
    at java.lang.Class.getMethod(Class.java:2937)
    at java.lang.Class.getMethod(Class.java:2449)
    at com.genymobile.scrcpy.wrappers.WindowManager.getFreezeRotationMethod(WindowManager.java:48)
    at com.genymobile.scrcpy.wrappers.WindowManager.freezeRotation(WindowManager.java:111)
    at com.genymobile.scrcpy.Device.rotateDevice(Device.java:372)
    at com.genymobile.scrcpy.Controller.handleEvent(Controller.java:205)
    at com.genymobile.scrcpy.Controller.control(Controller.java:97)
    at com.genymobile.scrcpy.Controller.lambda$start$0$com-genymobile-scrcpy-Controller(Controller.java:105)
    at com.genymobile.scrcpy.Controller$$ExternalSyntheticLambda1.run(Unknown Source:4)
    at java.lang.Thread.run(Thread.java:1012)
rom1v commented 2 months ago

Please test dev branch, it should be fixed (by #4740).

HiramTheHero commented 2 months ago

Works on dev branch. Thank you!