Должен ли я создавать нативную сборку, когда добавляю нативные библиотеки в React Native 0.61+?

Я использую RN 0.61.+ для своего приложения для Android и iOS с Codepush для удаленных обновлений JS.

С включенной функцией React Native auto-linking в 0.60+. Когда мы добавляем нативную библиотеку, в папки android и ios не добавляется нативный код, за исключением того, что нам нужно сделать pod install для iOS.

Означает ли это, что я могу просто обновить пользователей с помощью JS Bundle на codepush? Или мне все равно нужно создавать нативные сборки и выпускать их в магазины?


person Hannan Shaik    schedule 03.06.2020    source источник


Ответы (1)


Да, вы должны создавать новые сборки. Вот почему, когда вы добавляете новую нативную библиотеку, поддерживающую автоматическое связывание, вы можете не увидеть никаких изменений в папке Android, но волшебство происходит во время сборки, когда cli просматривает зависимости и связывает все для вас. В случае ios, как вы сказали, вы устанавливаете их с помощью установки pod.

Я могу просто обновить пользователей с помощью JS Bundle на codepush.

Вы можете сделать это, но есть большая вероятность, что ваше приложение выйдет из строя во время выполнения. Допустим, вы обновляете библиотеку до более новой версии и обновляете свой JS Bundle, когда ваш JS-код получает доступ к недавно добавленному методу в собственном коде, возникает проблема. Если обе подписи совпадают, это может сработать, но это нежелательный риск.

Поэтому, если вы добавляете нативную библиотеку, всегда выбирайте новую сборку.

person Guruparan Giritharan    schedule 04.06.2020