1package com.genymobile.scrcpy.video;
2
3import com.genymobile.scrcpy.AndroidVersions;
4import com.genymobile.scrcpy.device.Device;
5import com.genymobile.scrcpy.device.Size;
6import com.genymobile.scrcpy.util.Ln;
7import com.genymobile.scrcpy.wrappers.ServiceManager;
8import com.genymobile.scrcpy.wrappers.SurfaceControl;
9
…lines 10–100 unchanged (91 lines)
101 requestReset();
102 }
103
104 private static IBinder createDisplay() throws Exception {
105 // Since Android 12 (preview), secure displays could not be created with shell permissions anymore.
106 // On Android 12 preview, SDK_INT is still R (not S), but CODENAME is "S".
107 boolean secure = Build.VERSION.SDK_INT < AndroidVersions.API_30_ANDROID_11 || (Build.VERSION.SDK_INT == AndroidVersions.API_30_ANDROID_11
108 && !"S".equals(Build.VERSION.CODENAME));
109 return SurfaceControl.createDisplay("scrcpy", secure);
110 }
111
112 private static void setDisplaySurface(IBinder display, Surface surface, int orientation, Rect deviceRect, Rect displayRect, int layerStack) {
113 SurfaceControl.openTransaction();
114 try {
…lines 115–123 unchanged (9 lines)