В зависимости от того, создали ли вы ваше приложение с Expo
или с react-native init
, будет зависеть от того, как вы настроили ваше приложение.
act-native init
Короткий рассказ о том, что если вы создали свой проект с react-native init
, любые изменения конфигурации, которые вы хотите внести, должны быть сделаны в собственном приложении.
Для iOS в файле appname.xcodeproj
, в Info.plist
, AppDelegate.m
, возможно, вам даже может понадобиться добавить файл yourappname.entitlements
.
Аналогично для Android путем редактирования AndroidManifest.xml
, файлов build.gradle
, settings.gradle
и даже MainActivity.java
и MainApplication.java
.
Существует множество мест для редактирования в зависимости от изменений, которые вы хотите внести.
Использование react-native init
требует некоторого понимания родных проектов iOS и Android.
Expo
Expo
не имеет собственного кода, который вы можете редактировать самостоятельно, поэтому все настройки и настройки, которые вы можете изменить, в основном выполняются в app.json
.Вы можете увидеть больше об этом в документации Expo: https://docs.expo.io/versions/v31.0.0/workflow/configuration
Хотя Expo может быть проще в использовании, так как она извлекает всю сложность нативного кода, она может стать ограничивающей, поскольку вы не можете использовать зависимости, которыене поддерживаются Экспо.Это может привести к тому, что некоторые разработчики приложений начнут работать в Экспо, а затем выбросят , если инфраструктура Экспо не будет соответствовать их требованиям.
Экспо против реактивного натива init
На этот вопрос SO есть несколько хороших ответов о различиях между этими двумя способами настройки нативного приложения.Это определенно стоит прочитать. В чем разница между Expo и React Native?