Я заметил следующую проблему: когда приложение Unity работает в режиме VR на Android 10 (по крайней мере, на моем Samsung Galaxy S9 +): я не получаю сообщения при вызове телефона. Почему это так, и как его можно обойти?
Моя настоящая проблема немного другая: работа над приложением, которое отображает наложение поверх других приложений. Это работает нормально на нескольких устройствах под управлением Android 5-9. Он также работает над Android 10, но не для всех приложений - в частности, он не работает над одной конкретной игрой виртуальной реальности.
При анализе проблемы я обнаружил две интересные части:
a) Я также не получаю сообщения о входящем вызове вообще во время игры (ни когда входящие вызовы не должны отображаться в виде уведомления или в полноэкранном режиме. Единственная разница: если входящий вызов установлен в полноэкранный режим, затем звук игры останавливается - но все равно нет мелодии звонка)
b) пытаясь понять это поведение, я обнаружил, что «полноэкранное действие» - это способ подавления сообщений входящих вызовов. Unity VR запускается как «полноэкранный режим»?
Существует два возможных пути решения:
1) (предпочтительно :), могу ли я настроить свое приложение на достаточно высокий приоритет, чтобы оно в любом случае отображается поверх другого приложения?
2) Как приложение Unity может избежать доминирования - можно ли запустить режим Unity VR с меньшими требованиями к «полноэкранному режиму»? Я обнаружил, что могу написать приложение 2d-unity, которое позволяет накладываться на себя и которое сигнализирует о входящих вызовах. Мне также кажется "полноэкранным", то есть панель уведомлений и системные кнопки android скрыты.