Трансляция экрана Android сложнее, чем кажется
Даже простая кнопка трансляции экрана требует обработки множества состояний Android.

На первый взгляд сценарий прост: нажать кнопку, подтвердить разрешение и начать передачу изображения. На Android за этим стоят системные диалоги, выбор экрана или приложения и возможность отменить действие в любой момент.
Пользователь может дважды нажать кнопку, повернуть устройство, заблокировать его или вернуться без подтверждения. Во всех этих ситуациях MyDeskViewer должен сохранять ясное и предсказуемое состояние.
Мы тестировали поведение на разных версиях Android и устройствах, уделяя внимание явному согласию пользователя и возможности остановить трансляцию.