Преимущества:
Настройка проекта проста и может быть выполнена за считанные минуты
Вы (и другие люди) можете открыть проект, пока вы над ним работаете
Поделиться приложением просто (через QR-код или ссылку), вам не нужно отправлять весь файл .apk или .ipa
Для запуска приложения сборка не требуется.
Недостатки:
Вы не можете добавлять нативные модули (возможно, для некоторых из них)
Вы не можете использовать библиотеки, которые используют нативный код в Objective-C / Java
Стандартное приложение Hello World размером около 25 МБ (из-за встроенных библиотек)
Если вы хотите использовать: FaceDetector, ARKit o Платежи, вам нужно вывести их в ExpoKit
Извлечение его в ExpoKit имеет компромисс между функциями Expo, например, вы не можете поделиться через QR-код
При извлечении в ExpoKit вы ограничены исходной версией реакции, которая поддерживается ExpoKit в данный момент.
Отладка в ExpoKit (с нативными модулями) намного сложнее, поскольку в нем смешаны два языка и разные библиотеки (больше нет официальной поддержки Expo)
Это важно, потому что с React Native вы всегда можете перейти к нативному коду. Иногда это невероятно полезно, но это обходится дорого: вам нужно отправлять людям свои двоичные файлы, если вы хотите, чтобы они тестировали их, кто-то из другой части света не может просто нажать на ссылку, чтобы открыть ее во время работы на нем, и вы не можете просто опубликовать его одним щелчком мыши, чтобы кто-то получил к нему доступ, аналогично тому, как в браузере.