реагировать на собственный файл подфайла 0.63 с автоматической привязкой и поведение settings.gradle - PullRequest
0 голосов
/ 04 августа 2020

Я переношу проект с 0.59 на 0.63. Я подумал, что было бы проще создать новый проект, используя 0.63, а затем добавить все зависимости, чтобы я мог получать актуальные версии таких вещей, как Podfile и project settings.gradle. Итак, я создал новый проект, используя

react-native init myapp-clean

. Затем я приступил к добавлению зависимостей моего проекта одну за другой, т.е.

yarn add '@react-native-community/slider'
yarn add 'axios'
....

Прочитав об автоматической привязке, я ожидается, что каждая зависимость будет автоматически добавлена ​​в package. json, Podfile и settings.gradle. К моему удивлению, они были добавлены только в пакет. json. После добавления всех зависимостей Podfile не изменился по сравнению с исходным, созданным при инициализации проекта.

require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

platform :ios, '10.0'

target 'JuvoClean' do
  config = use_native_modules!

  use_react_native!(:path => config["reactNativePath"])

  target 'JuvoCleanTests' do
    inherit! :complete
    # Pods for testing
  end

  # Enables Flipper.
  #
  # Note that if you have use_frameworks! enabled, Flipper will not work and
  # you should disable these next few lines.
  use_flipper!
  post_install do |installer|
    flipper_post_install(installer)
  end
end

target 'JuvoClean-tvOS' do
  # Pods for JuvoClean-tvOS

  target 'JuvoClean-tvOSTests' do
    inherit! :search_paths
    # Pods for testing
  end
end

Файл settings.gradle также не изменился:

rootProject.name = 'JuvoClean'
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'

Конечно возникла проблема, я все равно решил попробовать запустить установку pod, чтобы посмотреть, что произойдет, и, к моему удивлению, он сообщил, что устанавливает все модули, упомянутые в package. json, т.е.

ios$ pod install

Adding a custom script phase for Pod RNFBApp: [RNFB] Core Configuration
Adding a custom script phase for Pod RNFBCrashlytics: [RNFB] Crashlytics Configuration
Auto-linking React Native modules for target `myapp-clean`: BVLinearGradient, Interactable, RNFBAnalytics, RNFBApp, RNFBCrashlytics, RNFBMessaging, RNPermissions, react-native-image-picker, react-native-maps, react-native-slider, and tipsi-stripe
Analyzing dependencies
Fetching podspec for `DoubleConversion` from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`
Fetching podspec for `Folly` from `../node_modules/react-native/third-party-podspecs/Folly.podspec`
Fetching podspec for `glog` from `../node_modules/react-native/third-party-podspecs/glog.podspec`
Downloading dependencies
Installing BVLinearGradient (2.5.6)
Installing CocoaAsyncSocket (7.6.4)
...
Installing react-native-slider (3.0.3)
Installing tipsi-stripe (7.5.3)
Generating Pods project
Integrating client project
Pod installation complete! There are 58 dependencies from the Podfile and 64 total pods installed.

После этого я смог создать новый проект как в xcode, так и в Android Studio.

Я предполагаю, что к встроенной интеграции реакции с cocoapods и gradle добавлено несколько новых magi c для автоматической вводить зависимости из пакета. json во время выполнения / компиляции? Я ничего не нашел об этом в документации, но хочу разобраться, прежде чем начинать обновлять свой проект.

...