Макс. Регионы для сохранения статуса - PullRequest
0 голосов
/ 27 сентября 2019

Интересно, почему существует ограничение в 50 регионов для сохранения статуса?

    private static final int MAX_REGIONS_FOR_STATUS_PRESERVATION = 50;

И каково влияние мониторинга многих регионов (например, 500) с использованием реализации RegionBootstrap?

Спасибо

1 Ответ

0 голосов
/ 27 сентября 2019

Библиотека должна сериализовать и сериализовать регионы с диска при каждом запуске приложения.Это быстрый процесс для нескольких регионов, но замедляется с увеличением количества.При экстремальных числах (например, 500) сериализация и десериализация могут занять несколько секунд и вызвать диалоговое окно «Приложение не отвечает» (ANR).Вот почему установлен разумный предел 50.

Помимо вышеприведенного ограничения, при мониторинге стольких областей будет расходоваться больше ресурсов ЦП и батареи, поскольку библиотека должна сравнивать каждую область с каждым обнаруженным маяком, чтобы увидеть, совпадают ли они.,Более эффективно спроектировать приложение, чтобы использовать меньшее количество регионов, если это возможно.Если вам абсолютно необходимо использовать так много, обязательно проверьте разрядку аккумулятора.

...