Подтвердить что ты не робот

React native для android работает очень медленно, если не включить "Debug JS"

Я разрабатываю приложение, использующее реакцию native, я использую некоторую базу кода для ios и android, версия ios работает плавно.

Но версия для Android работает очень медленно. странно:

Когда я встряхиваю телефон и нажимаю "Debug JS", чтобы включить отладку в хромовой функции, он работает быстрее, кто-нибудь знает причину?

4b9b3361

Ответ 1

Иногда это вызывает одну или несколько активных строк console.log(). Строки console.log следует искать и удалять, если они существуют.

Также в производстве babel-plugin-transform-remove-console можно использовать для автоматического удаления всех консольных. * методов.

Ответ 2

Причина для разных скоростей выполнения javascript-кода при работе в режиме отладки и без этого заключается в том, что когда вы находитесь в режиме отладки, чтобы включить отладку, React Native выполняет код в браузере Chrome на вашем компьютере, а результаты выполнения подключены к устройству.

Вне режима отладки код выполняется в движке JavaScriptCore на самом устройстве.

Тем не менее, я не могу объяснить, почему выполнение на устройстве настолько медленное. Возможно, вы работаете на маломощном устройстве или эмуляторе с ограниченной выделенной памятью?

Ответ 3

React Native приложение работает медленнее на Android. Но производительность не является реальной во время вашего развития. Вы можете создать версию релиза для проверки реальной производительности, версия выпуска намного быстрее, чем версия dev.

Также есть некоторые плохие коды, которые могут замедлить работу вашего приложения. Как console.log(), это замедляет приложение во время разработки. Избегайте ненужного повторного отображения представления, не используйте функцию стрелки и .bind в render и т.д.

Ответ 4

У меня такая же проблема на устройстве IOS (ipad4, ios10). Я не использую редукционный логгер и удаляю все console.log, но не знаю, что делает приложение настолько медленным. Для вкладок между вкладками требуется 2 с.

"реагировать-родной": "0,41,2",
"реагировать": "15.4.2",
"native-base": "^ 2.0.10",