да всё. expo из коробки да, закрытый нативный контур. expo-dev-client позволяет самому настраивать этот контур, ставь любые нативные модули, всё пашет
при чем тут установка нативных модулей?=) в более менее нормальных проектах жизнено нужен доступ к сборщику (грэдл или мавен) для подключения плагинов, настройки версионности проекта (стейдж, прод) и это еще далеко не все. Банально РН-Конфиг, не думаю, что можно хоть как-то нормально завести из дев-клиента
а что вам от грэдла и мавена нужно, простите? ) каких таких плагинов? стейдж, прод, пред-прод настраиваются 10-ю строками в конфиге expo eas, одной командой запускается в сборку.
Вот тебе кейс - сделать проект максимально конвертируемым. 1 проект - 10 клиентов с разным набором ассетов, разными сплешами, шрифтами и цветовой гаммой. С аппГеллери СДК для пущей радости.
в одном конфиге всё правится, app.json, там и сплеши и иконки и названия и языки и env свои прокинуть можешь. более того, есть надстройка над app.jsom, app.config.js, где ты можешь в динамике всё это менять, в зависимости от сборки (дев, прод, уат итп). для такой задачи я бы прописал app.config.js и вызывал бы сборки с параметрами, 1 раз прописал и более не елозишь там. аппГалери пока не сталкивался, но всегда для таких штук есть eject. до прихода eas я так и делал, вся разработка в expo, для кастомных плагинов условный sh файл, который делает eject и пробегается по десятку пунктов, где что поменять, чтобы updates пахали итд итп
Минус (достаточно серьёзный) только в том, что этот набор абстракций не даёт никакого реального опыта за пределами expo Но тут действительно каждый сам решает, что ему важнее - быть "expo developer" или "mobile developer" с опытом работы с нативным окружением, системами сборки и т.д.
я бы сказал не за пределами expo, а за пределами RN. да действительно, практически нет возможности конфигурить нативные ios/android проекты, ковыряться в xcode/android-studio, поэому и я написал, что если есть интерес, это похвально. а если нужно делать приложения, ты просто делаешь приложения 🤷♂️
Именно за пределами expo - потому что в случае работы с cli с этим приходится разбираться, и это потом можно использовать в нативной разработке (те же build variants в android сборках и т.п.)
Обсуждают сегодня