koush / vysor.io

Vysor - Mirror and Control your Phone
https://vysor.io
1.54k stars 290 forks source link

Android: Mac screen recording broken (EACCES permission denied) #1424

Open jlfreund opened 1 month ago

jlfreund commented 1 month ago

You must attach a Vysor Bug Report Link

To Reproduce Steps to reproduce the behavior:

  1. Connect to Android device
  2. Click video recording icon (icon starts spinning, to start recording)
  3. Click video recording icon again (icon stops spinning, to stop recording)

Expected behavior File save dialog should appear to save the video recording

Screenshots No save dialog appears

Desktop (please complete the following information):

Android (please complete the following information):

Additional context This reproduces 100% for me.

Things I've tried are: (A) Rebooting Macbook; Rebooting Android device; (B) Clear Vysor app data on device and verify all permissions work; (C) Verify screen capture works; (D) Tried monkeying with it, including another user's recommended workaround to start recording, then do a screen capture, cancel the screen save dialog, then stop recording.

Note, in the logs, I see the following error, even though Vysor app has File and Media permissions:

06-02 15:38:56.043 4994 5013 E VysorControl: java.io.FileNotFoundException: /sdcard/vysor/screencapture-1717367936041.mp4: open failed: EACCES (Permission denied) 06-02 15:38:56.043 4994 5013 E VysorControl: at libcore.io.IoBridge.open(IoBridge.java:492) 06-02 15:38:56.043 4994 5013 E VysorControl: at java.io.RandomAccessFile.(RandomAccessFile.java:289) 06-02 15:38:56.043 4994 5013 E VysorControl: at java.io.RandomAccessFile.(RandomAccessFile.java:152) 06-02 15:38:56.043 4994 5013 E VysorControl: at android.media.MediaMuxer.(MediaMuxer.java:356) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.Mp4Writer$Companion.create(Unknown Source:14) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.VysorControlBase.startRecording(Unknown Source:51) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.VysorControlBase.handleCommand(Unknown Source:906) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.VysorControl.handleCommand(Unknown Source:50) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.VysorControlBase.handleCommand(Unknown Source:19) 06-02 15:38:56.043 4994 5013 E VysorControl: at com.koushikdutta.vysor.VysorDaemonBase$setupControlServer$1$1.invokeSuspend(Unknown Source:291) 06-02 15:38:56.043 4994 5013 E VysorControl: at f.h.k.a.a.resumeWith(:2) 06-02 15:38:56.043 4994 5013 E VysorControl: at f.h.i.resumeWith(Unknown Source:31) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.s0.a(Unknown Source:7) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.c.j(:3) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.c.i(:2) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.a.e(Unknown Source:14) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.o1.n.q(Unknown Source:13) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.o1.n.j(Unknown Source:20) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.o1.l.p(:27) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.o1.l.o(:6) 06-02 15:38:56.043 4994 5013 E VysorControl: at b.a.a.o1.i.run(:1) 06-02 15:38:56.043 4994 5013 E VysorControl: at java.lang.Thread.run(Thread.java:923) 06-02 15:38:56.043 4994 5013 E VysorControl: Caused by: android.system.ErrnoException: open failed: EACCES (Permission denied) 06-02 15:38:56.043 4994 5013 E VysorControl: at libcore.io.Linux.open(Native Method) 06-02 15:38:56.043 4994 5013 E VysorControl: at libcore.io.ForwardingOs.open(ForwardingOs.java:166) 06-02 15:38:56.043 4994 5013 E VysorControl: at libcore.io.BlockGuardOs.open(BlockGuardOs.java:254) 06-02 15:38:56.043 4994 5013 E VysorControl: at libcore.io.IoBridge.open(IoBridge.java:478) 06-02 15:38:56.043 4994 5013 E VysorControl: ... 21 more