Не проходят касания в систему

Я написал простой код для создания плавающего окна. На Android 11 всё работало хорошо, но на Android 12 возникли трудности.

Никак не получается сделать пропуск касания сквозь окно в систему. Через logcat узнал, что система вешает на моё окно флаг FLAG_SLIPPERY, который препятствует прохождению касаний в систему.

Как я понял, это флаг безопасности, но я не нашёл способа отключения этого флага.

На телефоне Realme 6 pro (Android 11) всё нормально работает, на Motorolla edge 30 (Android 12) — нет.

canvasLayoutParams_vi = new WindowManager.LayoutParams(
    WindowManager.LayoutParams.MATCH_PARENT,
    WindowManager.LayoutParams.MATCH_PARENT,
    WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
    WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSLUCENT);

canvasLayoutParams_vi.gravity = Gravity.TOP | Gravity.START;
canvasLayoutParams_vi.x = 0;
canvasLayoutParams_vi.y = 0;

vi = new EmptyView(this);
windowManager.addView(vi, canvasLayoutParams_vi);

Сама ошибка:

Letterbox_left_ActivityRecord{606481 u0 com.Application/.MainActivity t377} has FLAG_SLIPPERY. Please report this in b/157929241

Ответы (0 шт):