Я хочу обнаружить устройство с низкой производительностью во время выполнения, чтобы отключить сложную lottie
анимацию. Я рассматриваю для использования модель устройства от react-native-device-info
, но у меня должен быть список высокопроизводительных телефонов.
Как обнаружить устройство с низкой производительностью во время выполнения, реагирующее на родное
Ответы (3)
Меня также интересует этот вопрос, и было бы хорошо иметь какое-то решение. Я могу подумать об использовании react-native-device-info и сравнении следующих свойств устройства:
- Архитектура ЦП (32/64 бит)
- общая доступная оперативная память
- общая емкость диска
- текущая версия андроида
Возможно, используя эти переменные, мы сможем рассчитать некоторый уровень производительности с не такой уж плохой точностью.
64-битная версия + скажем, не менее 3 ГБ ОЗУ + 32 ГБ емкости + одна из более новых версий Android может быть хорошим признаком того, что устройство должно иметь некоторую мощность внутри.
с другой стороны, 32 бит + 1/2 ГБ ОЗУ + максимальная емкость 8/16 ГБ + не то, чтобы новая версия Android могла привести к проблемам с производительностью.
Серьезно, давайте поговорим об этом :D Может быть, мы сможем найти какой-нибудь хороший компромисс и, возможно, написать библиотеку или внести свой вклад в react-native-device-info с функцией, которая попытается предложить разработчикам производительность устройства.
рассмотрите возможность использования версии Android, мы используем эту формулу: low android version === old phone === low performance
производительность может быть низкой, если на устройстве недостаточно памяти, открыто слишком много приложений, какой браузер используется и т. д. это трудно обнаружить
когда это необходимо, вы можете написать небольшой тест производительности в приложении перед анимацией или при загрузке/инициализации приложения, и вы можете использовать эти результаты.
Любой тест можно запустить в фоновом режиме с помощью веб-воркера или библиотеки, например fireball-js. , затем сравните результат.