npx pod-install возвращает "CocoaPods не поддерживается в этом проекте"
Контекст: я пытаюсь создать приложение React Native с react-native-video
. Инструкция по установке iOs начинается сnpx pod-install
.
Бег:
npx pod-install
Возврат:
npx: installed 1 in 1.113s
Scanning for pods...
CocoaPods is not supported in this project
Выходное сообщение мне пока не помогло. Итак, я пошел к npm pod-install. Похоже, он абстрагирует CocoaPods и сложность драгоценных камней.
Есть ли более простой способ решить эту проблему, чем изучение CocoaPods и gem?
package.json
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"expo": "~37.0.3",
"react": "~16.9.0",
"react-dom": "~16.9.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-37.0.1.tar.gz",
"react-native-video": "^4.4.5",
"react-native-web": "~0.11.7"
},
"devDependencies": {
"babel-preset-expo": "~8.1.0",
"@babel/core": "^7.8.6"
},
"private": true
}
4 ответа
Причина, по которой вы получаете сообщение об ошибке, заключается в том, что вы создаете свой проект React-Native с помощью Expo.
Expo экстраполирует собственный код подальше от вас, чтобы вам не приходилось иметь дело с собственным кодом. Также проект Expo не позволяет редактировать собственный код. Cocoapods добавляет собственный код в ваше приложение, поэтому вы получаете ошибку.
Если вы хотите использовать видео в проекте Expo, вам следует посмотреть, что поставляется с Expo, документация для видео находится здесь.
Если это не соответствует вашим потребностям, и вам нужно использовать react-native-video
тогда вам нужно будет eject
ваш проект из Expo, чтобы он стал полноценным проектом React-Native. Это не тот шаг, который вам следует делать легкомысленно и без предварительного его полного исследования.
Я также предлагаю вам ознакомиться с ответами на этот вопрос SO, который объясняет различия между Expo и React-Native.
Вы должны проверить текущую папку, в которой находитесь, и убедиться, что вы находитесь в корневом каталоге проекта в терминале.
Я рекомендую использовать видеотеку expo, если вы только столкнулись с этой проблемой с react-native-video. Инструкции из их документов: https://docs.expo.io/versions/latest/sdk/video/
expo install expo-av
import { Video } from 'expo-av';
<Video
source={{ uri: 'http://d23dyxeqlo5psv.cloudfront.net/big_buck_bunny.mp4' }}
rate={1.0}
volume={1.0}
isMuted={false}
resizeMode="cover"
shouldPlay
isLooping
style={{ width: 300, height: 300 }}
/>