Это проблема, которая поразила меня в замешательстве. Я профилировал приложение, которое я разрабатываю, и заметил, что всякий раз, когда я прекращал прокручивать RecyclerView, профиль GPU начинал обвинять ужасную статистику. Я не мог понять, почему это происходит, на экране ничего не обновлялось, пока я не заметил, что что-то меняется за графиком профиля графического процессора в синхронизации с обновлением графика.
Это был курсор, мигающий в представлении EditText.
Я не мог поверить, что я разработал приложение, которое будет вести себя так ужасно, только когда мигает курсор, поэтому я исследовал другие приложения, приложения Google и обнаружил, что проблема присутствует везде и не ограничивается моим приложением. .
Ниже приведен снимок экрана с мигающим курсором в окне поиска официального приложения Gmail.
Как видите, профиль графического процессора недопустим.
Есть ли способ исправить это или избежать этой проблемы? Я вспоминаю, как тестеры жаловались на разрядку батареи, когда приложение было открыто, ничего не делая, но я предположил, что в то время это было связано с ошибкой, существовавшей при подключении к сокету. Теперь, рассматривая эту проблему, тестеры часто оставляют свои телефоны на одном экране, где курсор всегда мигает, это очень вероятно, причина разряда батареи, поэтому было бы важно уменьшить влияние, которое оказывает простой мигающий курсор.
Учтите, что я не собираюсь переписывать курсор или изменять его ожидаемое поведение, я просто пытаюсь уменьшить влияние мерцающего курсора на графический процессор.