Invalid `Podfile` file: cannot load such file - react-native

I'm getting to ios folder and use "pod install" command.
And error below
[!] Invalid `Podfile` file: cannot load such file -- /Users/blabla/works/blabla-app/node_modules/react-native/scripts/react_native_pods.
from /Users/blabla/works/blabla-app/ios/Podfile:2
-------------------------------------------
require_relative '../node_modules/#react-native-community/cli-platform-ios/native_modules'
require_relative '../node_modules/react-native/scripts/react_native_pods'
-------------------------------------------
I removed node_modules folder, I deleted package-lock.json and used "npm install" command. I deleted cocoapods and reinstall.
And nothing worked for me.
My package.json file is below (only packages not all)
"#codler/react-native-keyboard-aware-scroll-view": "^1.0.1",
"axios": "^0.19.0",
"entities": "^2.1.0",
"expo": "^38.0.8",
"expo-cli": "^3.28.5",
"native-base": "github:Healthyco/NativeBase#feature/fix-request-animation",
"native-base-autocomplete": "^1.3.2",
"prop-types": "^15.7.2",
"react": "16.9.0",
"react-native": "0.62.0",
"react-native-camera": "^3.40.0",
"react-native-camera-hooks": "^0.3.1",
"react-native-chart-kit": "^6.7.0",
"react-native-daterange-picker": "^1.4.0",
"react-native-gesture-handler": "^1.3.0",
"react-native-keyboard-aware-scroll-view": "https://github.com/APSL/react-native-keyboard-aware-scroll-view#fb40649a9c84aa23d6a55355e9e0e432795967a6",
"react-native-keyboard-aware-scrollview": "^2.1.0",
"react-native-linear-gradient": "^2.5.6",
"react-native-masked-text": "^1.13.0",
"react-native-modal": "^11.5.6",
"react-native-safe-area-context": "~3.0.7",
"react-native-screens": "^2.7.0",
"react-native-svg": "^12.1.0",
"react-native-swipe-list-view": "^3.2.5",
"react-native-vector-icons": "^7.1.0",
"react-navigation": "^3.11.2",
"react-redux": "^7.2.0",
"redux": "^4.0.1",
"redux-persist": "^5.10.0",
"redux-saga": "^1.0.2",
"reduxsauce": "^1.0.1",
"victory-native": "^35.3.1"
my podfile:
I remembered that, I downgraded from react 63.2 to 62.0
require_relative '../node_modules/#react-native-community/cli-platform-ios/native_modules'
require_relative '../node_modules/react-native/scripts/react_native_pods'
platform :ios, '10.0'
target 'blabla' do
config = use_native_modules!
use_react_native!(:path => config["reactNativePath"])
pod 'RNSVG', :path => '../node_modules/react-native-svg'
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
target 'blablaTests' 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 'blabla-tvOS' do
# Pods for [YourProjectName]-tvOS
target 'blabla-tvOSTests' do
inherit! :search_paths
# Pods for testing
end
end

You are likely missing the react-native npm module.
You should include it in your packages.json to reduce the likelihood of encountering this error in the future, by using this command.
$ npm install --save react-native

What worked for me whas deleting the ios directory and then running the build command again, i.e.:
rm -rf ios
eas build -p ios
(or whatever build command you are using)

Related

Invalid Podfile file unexpected template EOS

i have battling with this error for days now, trying to start up at a new job. Having issues while trying to run pod install on a react native cli project, i have tried every possible solution on here, doesnt work with mine.
The errors:
[!] Invalid `Podfile` file: /Users/decagon/kumoafrica/node_modules/react-native/scripts/react_native_pods_utils/script_phases.rb:39: syntax error, unexpected <<
template =<<~EOS
^
/Users/decagon/kumoafrica/node_modules/react-native/scripts/react_native_pods_utils/script_phases.rb:40: unknown regexp options - ll
/Users/decagon/kumoafrica/node_modules/react-native/scripts/react_native_pods_utils/script_phases.rb:41: dynamic constant assignment
RCT_SCRIPT_POD_INSTALLATION_ROOT=$(pwd)
^
/Users/decagon/kumoafrica/node_modules/react-native/scripts/react_native_pods_utils/script_phases.rb:41: `$(' is not allowed as a global variable name
/Users/decagon/kumoafrica/node_modules/react-native/scripts/react_native_pods_utils/script_phases.rb:41: syntax error, unexpected end-of-input
RCT_SCRIPT_POD_INSTALLATION_ROOT=$(pwd)
^.
# from /Users/decagon/kumoafrica/ios/Podfile:1
# -------------------------------------------
> require_relative '../node_modules/react-native/scripts/react_native_pods'
# require_relative '../node_modules/#react-native-community/cli-platform-ios/native_modules'
# -------------------------------------------
The 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, '11.0'
install! 'cocoapods', :deterministic_uuids => false
target 'kumo' do
config = use_native_modules!
# Flags change depending on the env values.
flags = get_default_flags()
use_react_native!(
:path => config[:reactNativePath],
# to enable hermes on iOS, change `false` to `true` and then install pods
:hermes_enabled => flags[:hermes_enabled],
:fabric_enabled => flags[:fabric_enabled],
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
target 'kumoTests' 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 the next line.
use_flipper!()
post_install do |installer|
react_native_post_install(installer)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
end
end
package.json:
{
"name": "kumo",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint . --ext .js,.jsx,.ts,.tsx"
},
"dependencies": {
"react": "17.0.2",
"react-native": "0.68.1"
},
"devDependencies": {
"#babel/core": "^7.12.9",
"#babel/runtime": "^7.12.5",
"#react-native-community/eslint-config": "^2.0.0",
"#types/jest": "^26.0.23",
"#types/react-native": "^0.67.3",
"#types/react-test-renderer": "^17.0.1",
"#typescript-eslint/eslint-plugin": "^5.17.0",
"#typescript-eslint/parser": "^5.17.0",
"babel-jest": "^26.6.3",
"eslint": "^7.32.0",
"jest": "^26.6.3",
"metro-react-native-babel-preset": "^0.67.0",
"react-test-renderer": "17.0.2",
"typescript": "^4.4.4"
},
"resolutions": {
"#types/react": "^17"
},
"jest": {
"preset": "react-native",
"moduleFileExtensions": [
"ts",
"tsx",
"js",
"jsx",
"json",
"node"
]
}
}
if anything else is needed ask, please help.
Don't know if this is helpful now but if you're running React Native from scratch on a M1 Chip machine I was able to fix this issue by doing:
cd ios
bundle install
bundle exec pod install
After hours of struggle this was the way to actually make for pod install work for me.
This same example can be found here: https://reactnative.dev/docs/environment-setup under the "Creating a new application" section.
I think you are Mac M1 user, so follow this steps :
Uninstall the local cocoapods gem
sudo gem uninstall cocoapods
install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
or
Go to Site Web
Finally install cocoapods via Homebrew
brew install cocoapods
And it will Work, Otherwise check this

Expo EAS Build iOS Failed: Attempted to initialize an object with an unknown UUID

I know that a similar question has been asked by a few people on StackOverflow, but they were not using expo to build their project, so the solution of using XCode does not apply to me.
I am trying to build my expo project using the command eas build --profile development --platform ios, and it keeps failing with the error [stderr] [!] <PBXResourcesBuildPhase UUID=13B07F8E1A680F5B00A75B9A>attempted to initialize an object with an unknown UUID.5360B39C71704D31869D9F73for attribute:files. This can be the result of a merge and the unknown UUID is being discarded.
The relevant solutions proposed by other people such as downgrading to SDK Version 43 do not work for me. I was hoping someone could look at my error trace stack and see what could be the issue. I have attached my package.json, Podfile, environment info, as well as an image of my error.
If someone could please figure this out for me that would be excellent because this has significantly held the development of my app for about a week. I have also added this issue on GitHub, but I didn't get a response and I really need quick help to continue development. Here are the links:
GitHub Link - SDK Version 44
GitHub Link - SDK Version 43
Environment:
System:
OS: macOS 12.2.1
Shell: 5.8 - /bin/zsh
Binaries:
Node: 16.3.0 - /opt/homebrew/bin/node
Yarn: 1.22.10 - /opt/homebrew/bin/yarn
npm: 8.3.0 - /opt/homebrew/bin/npm
Watchman: 2022.01.31.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
IDEs:
Xcode: 13.3/13E113 - /usr/bin/xcodebuild
npmPackages:
expo: ^44.0.0 => 44.0.6
react: 17.0.1 => 17.0.1
react-dom: 17.0.1 => 17.0.1
react-native: 0.64.3 => 0.64.3
react-native-web: 0.17.1 => 0.17.1
npmGlobalPackages:
eas-cli: 0.47.0
expo-cli: 5.3.0
Expo Workflow: bare
package.json
{
"name": "yourhud",
"version": "1.0.0",
"scripts": {
"start": "expo start --dev-client",
"android": "expo run:android",
"ios": "expo run:ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"#config-plugins/react-native-ble-plx": "^0.0.2",
"#expo-google-fonts/be-vietnam": "^0.2.0",
"#expo-google-fonts/dev": "^0.2.0",
"#expo-google-fonts/heebo": "^0.2.2",
"#expo-google-fonts/hind-siliguri": "^0.2.2",
"#expo-google-fonts/inter": "^0.2.2",
"#expo-google-fonts/josefin-sans": "^0.2.2",
"#expo-google-fonts/lato": "^0.2.2",
"#expo-google-fonts/michroma": "^0.2.0",
"#expo-google-fonts/montserrat": "^0.2.0",
"#expo-google-fonts/nunito": "^0.2.0",
"#expo-google-fonts/open-sans": "^0.2.2",
"#expo-google-fonts/orbitron": "^0.2.2",
"#expo-google-fonts/oswald": "^0.2.2",
"#expo-google-fonts/overpass": "^0.2.2",
"#expo-google-fonts/poppins": "^0.2.2",
"#expo-google-fonts/prompt": "^0.2.2",
"#expo-google-fonts/quicksand": "^0.2.0",
"#expo-google-fonts/raleway": "^0.2.0",
"#expo-google-fonts/rubik": "^0.2.0",
"#expo-google-fonts/varela-round": "^0.2.2",
"#expo-google-fonts/work-sans": "^0.2.2",
"#mapbox/polyline": "^1.1.1",
"#miblanchard/react-native-slider": "^2.1.0",
"#react-native-async-storage/async-storage": "~1.15.0",
"#react-native-community/geolocation": "^2.0.2",
"#react-native-picker/picker": "2.2.1",
"#react-navigation/drawer": "^6.1.8",
"#react-navigation/material-top-tabs": "^6.0.6",
"#react-navigation/native": "^6.0.6",
"#react-navigation/native-stack": "^6.2.5",
"#types/haversine": "^1.1.5",
"#types/mapbox__polyline": "^1.0.2",
"#types/react-native-base64": "^0.2.0",
"#types/react-native-linear-gradient": "^2.4.0",
"#types/react-native-snap-carousel": "^3.8.5",
"#types/react-native-version-check": "^3.4.4",
"axios": "^0.24.0",
"dotenv": "^10.0.0",
"eas-cli": "0.49.0",
"expo": "^44.0.0",
"expo-app-loading": "~1.3.0",
"expo-av": "~10.2.0",
"expo-brightness": "~10.1.0",
"expo-dev-client": "~0.8.4",
"expo-device": "~4.1.0",
"expo-font": "~10.0.4",
"expo-in-app-purchases": "~12.1.0",
"expo-linear-gradient": "~11.0.3",
"expo-linking": "~3.0.0",
"expo-location": "~14.0.1",
"expo-notifications": "~0.14.0",
"expo-permissions": "~13.1.0",
"expo-sensors": "~11.1.0",
"expo-speech": "~10.1.0",
"expo-splash-screen": "~0.14.1",
"expo-status-bar": "~1.2.0",
"expo-task-manager": "~10.1.0",
"haversine": "^1.1.1",
"luxon": "^2.2.0",
"react": "17.0.1",
"react-dom": "17.0.1",
"react-native": "0.64.3",
"react-native-anchor-point": "^1.0.6",
"react-native-base64": "^0.2.1",
"react-native-ble-plx": "^2.0.3",
"react-native-bouncy-checkbox": "^2.1.9",
"react-native-color-matrix-image-filters": "^5.2.14",
"react-native-dotenv": "^3.3.1",
"react-native-dropdown-picker": "^5.3.0",
"react-native-email": "^1.1.0",
"react-native-gesture-handler": "~2.1.0",
"react-native-google-places-autocomplete": "^2.4.1",
"react-native-html-parser": "^0.1.0",
"react-native-numeric-input": "^1.9.0",
"react-native-obd2": "^0.0.2",
"react-native-pager-view": "5.4.9",
"react-native-picker-select": "^8.0.4",
"react-native-progress": "^5.0.0",
"react-native-reanimated": "~2.3.1",
"react-native-render-html": "^6.3.4",
"react-native-safe-area-context": "3.3.2",
"react-native-screens": "~3.10.1",
"react-native-shake": "^5.1.1",
"react-native-snap-carousel": "^3.9.1",
"react-native-speedometer": "^1.0.5",
"react-native-svg": "12.1.1",
"react-native-swiper": "^1.6.0",
"react-native-tab-view": "^3.1.1",
"react-native-track-player": "^2.1.3",
"react-native-triangle": "^0.0.9",
"react-native-tts": "^4.1.0",
"react-native-version-check": "^3.4.2",
"react-native-web": "0.17.1",
"shortid": "^2.2.16",
"use-places-autocomplete": "^1.11.0"
},
"devDependencies": {
"#babel/core": "^7.12.9",
"#types/jest": "^27.4.0",
"#types/luxon": "^2.0.9",
"#types/react": "~17.0.21",
"#types/react-native": "~0.64.12",
"#types/react-test-renderer": "^17.0.1",
"#types/shortid": "^0.0.29",
"typescript": "~4.3.5"
},
"private": true
}
Podfile
require File.join(File.dirname(`node --print "require.resolve('expo/package.json')"`), "scripts/autolinking")
require File.join(File.dirname(`node --print "require.resolve('react-native/package.json')"`), "scripts/react_native_pods")
require File.join(File.dirname(`node --print "require.resolve('#react-native-community/cli-platform-ios/package.json')"`), "native_modules")
platform :ios, '12.0'
require 'json'
podfile_properties = JSON.parse(File.read('./Podfile.properties.json')) rescue {}
target 'YourHUD' do
use_expo_modules!
config = use_native_modules!
pod 'expo-dev-launcher', path: '../node_modules/expo-dev-launcher', :configurations => :debug
pod 'expo-dev-menu', path: '../node_modules/expo-dev-menu', :configurations => :debug
# #generated begin pre_installer - expo prebuild (DO NOT MODIFY) sync-c8812095000d6054b846ce74840f0ffb540c2757
pre_install do |installer|
# #generated begin #react-native-mapbox-gl/maps-pre_installer - expo prebuild (DO NOT MODIFY) sync-5a7ed0a20d5aff2d61639bc5bb4fd5551233d57c
$RNMBGL.pre_install(installer)
# #generated end #react-native-mapbox-gl/maps-pre_installer
end
# #generated end pre_installer
use_react_native!(
:path => config[:reactNativePath],
:hermes_enabled => podfile_properties['expo.jsEngine'] == 'hermes'
)
# Uncomment to opt-in to using Flipper
#
# if !ENV['CI']
# use_flipper!('Flipper' => '0.75.1', 'Flipper-Folly' => '2.5.3', 'Flipper-RSocket' => '1.3.1')
# end
post_install do |installer|
react_native_post_install(installer)
# Workaround `Cycle inside FBReactNativeSpec` error for react-native 0.64
# Reference: https://github.com/software-mansion/react-native-screens/issues/842#issuecomment-812543933
installer.pods_project.targets.each do |target|
if (target.name&.eql?('FBReactNativeSpec'))
target.build_phases.each do |build_phase|
if (build_phase.respond_to?(:name) && build_phase.name.eql?('[CP-User] Generate Specs'))
target.build_phases.move(build_phase, 0)
end
end
end
end
end
post_integrate do |installer|
begin
expo_patch_react_imports!(installer)
rescue => e
Pod::UI.warn e
end
end
end
Build Log:
I figured out the answer thanks partially to the help of #brentvatne. The issue was actually not related to the [stderr] at the bottom of the error logs where it says <PBXResourcesBuildPhase UUID=13B07F8E1A680F5B00A75B9A> attempted to initialize an object with an unknown UUID. In fact, the issue was related to the warning, undefined method pre_install for nil:NilClass. If you look at the Podfile, the line $RNMBGL.pre_install(installer) required the $RNMBGL object to exist, but this was provided by the #react-native-mapbox-gl/maps-pre_installer which I had previously installed, but then uninstalled before running the build. Therefore, the error kept popping up saying that the pre_install could not be done, and that was all because the appropriate package for that line in the Podfile was not downloaded at the time of building.

#react-native-firebase/admob is not working in IOS

I am using #react-native-firebase/admob for displaying add on app. It is working fine in Android but when I am using it on ios then app is crash with following error.
ld: warning: directory not found for option '-L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-5.0/iphonesimulator'
Undefined symbols for architecture x86_64:
"___isPlatformVersionAtLeast", referenced from:
-[APMMeasurement reportFirstOpenOnWorkerQueue] in GoogleAppMeasurement(APMMeasurement_d6638b533a7cdc437824cf7209ad695a.o)
-[APMSqliteStore prepareSQL:error:] in GoogleAppMeasurement(APMSqliteStore_acc99dfbcd8c054676308fb24061e3f7.o)
+[APMASIdentifierWrapper iOS14OrAbove] in GoogleAppMeasurement(APMASIdentifierWrapper_1d59db0ddd97263057318367c9cd40e6.o)
-[APMIdentity supportsAppTrackingConsentStatus] in GoogleAppMeasurement(APMIdentity_ba0d5d0b5e35834ab5a7bf0571075715.o)
-[APMMeasurement(URL) sendDeepLinkURLToAppDelegateOnMainThread:extraInfo:] in GoogleAppMeasurement(APMMeasurement+URL_89002570063d654e31cbed7a49d52cf9.o)
l002 in GoogleMobileAds(GADAugmentedRealitySignalSource.o)
_GADWindowSceneForViewController in GoogleMobileAds(GADScene.o)
...
ld: symbol(s) not found for architecture x86_64
clang:
error: linker command failed with exit code 1 (use -v to see invocation)
** BUILD FAILED **
The following build commands failed:
Ld /Users/admin/Library/Developer/Xcode/DerivedData/adMob-govjzfsolrnouaecgeggequoemrv/Build/Products/Debug-iphonesimulator/adMob.app/adMob normal x86_64
(1 failure)
adMob is my project name.I followed all the instruction to install it.
package.json
{
"name": "adMob",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint ."
},
"dependencies": {
"#react-native-firebase/admob": "^7.6.5",
"#react-native-firebase/app": "^8.4.3",
"react": "16.13.1",
"react-native": "0.63.2"
},
"devDependencies": {
"#babel/core": "7.11.6",
"#babel/runtime": "7.11.2",
"#react-native-community/eslint-config": "1.1.0",
"babel-jest": "25.5.1",
"eslint": "6.8.0",
"jest": "25.5.4",
"metro-react-native-babel-preset": "0.59.0",
"react-test-renderer": "16.13.1"
},
"jest": {
"preset": "react-native"
}
}
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 'adMob' do
config = use_native_modules!
use_react_native!(:path => config["reactNativePath"])
pod 'RNFBAdMob', :path => '../node_modules/#react-native-firebase/admob'
target 'adMobTests' 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 'adMob-tvOS' do
# Pods for adMob-tvOS
target 'adMob-tvOSTests' do
inherit! :search_paths
# Pods for testing
end
end
I also added firebase.json file in root folder
After I did RND and I found that it was the Xcode version issue. I am using Xcode 10 and it is working on Xcode 11 and higher version. So that's why I am facing this issue.
Yes definitely. If you not get ads only archive. then it is mostly permission issue. You should also check google ad mod key which you implemented in react native admod is correct or not.

how to solve "null is not object(evaluating RNGestureHandlerModule.default.direction" in react native 5.0

I have installed all the dependencies according to the react navigation docs.. when I copied code from docs this error occurs..
my dependencies are
"dependencies": {
"#react-native-community/masked-view": "^0.1.6",
"#react-navigation/native": "^5.0.5",
"#react-navigation/stack": "^5.0.5",
"react": "16.9.0",
"react-native": "0.61.5",
"react-native-gesture-handler": "^1.6.0",
"react-native-paper": "^3.6.0",
"react-native-reanimated": "^1.7.0",
"react-native-safe-area-context": "^0.7.3",
"react-native-screens": "^2.0.0-beta.7"
},
SOLUTION FOR ANDROID
From your project root folder run :
cd android
./gradlew clean
run project react-native run-android
SOLUTION FOR IOS
From your project root folder run :
cd ios
pod install
run project react-native run-ios
If these solutions didn't work remove your node_modules folder and re-install using npm install
NOTE :
Do not link packages using react-native link since you are using RN 0.60 >

Has anyone been able to use react-native-maps with Google maps?

I currently have a react-native project that uses react-native-maps and Viro. Viro requires a rn version of rn 0.59.9 so I'm not using the latest version in this project.
It's currently set up to use the native apple maps when using an iPhone simulator which works fine and I also have Viro working as well. The next step is to start adding directions from the current user's location to different places around them and I planned on using Google Maps to do this.
Unfortunately I'm having a lot of issues trying to do this and having no luck working through the installation documentation.
My package.json currently looks like this:
{
"name": "LoveWinchester",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest",
"postinstall": "jetifier -r"
},
"dependencies": {
"axios": "^0.19.0",
"react": "16.8.3",
"react-native": "0.59.9",
"react-native-gesture-handler": "~1.4.0",
"react-native-maps": "0.26.1",
"react-native-reanimated": "^1.4.0",
"react-native-screens": "^1.0.0-alpha.23",
"react-navigation": "^4.0.10",
"react-navigation-stack": "^1.10.3",
"react-viro": "2.17.0",
"rn-bottom-drawer": "^1.4.3"
},
"devDependencies": {
"#babel/core": "^7.7.2",
"#babel/runtime": "^7.7.2",
"babel-jest": "^24.9.0",
"jest": "^24.9.0",
"jetifier": "^1.6.4",
"metro-react-native-babel-preset": "^0.57.0",
"react-test-renderer": "16.8.3"
},
"jest": {
"preset": "react-native"
}
}
And my Podfile looks like below:
target 'LoveWinchester' do
platform :ios, '9.3'
pod 'ViroReact', :path => '../node_modules/react-viro/ios/'
pod 'ViroKit_static_lib', :path => '../node_modules/react-viro/ios/dist/ViroRenderer/static_lib'
pod 'RNReanimated', :path => '../node_modules/react-native-reanimated'
pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'
pod 'RNScreens', :path => '../node_modules/react-native-screens'
pod 'react-native-maps', :path => '../node_modules/react-native-maps'
end
Any help would be really appreciated!!
Added the pod GoogleMaps
pod 'GoogleMaps'
after that goto iOS folder & install it
cd ios
pod install
Now, you will probably get an error react-native-maps: AirGoogleMaps dir must be added to your xCode project to support GoogleMaps on iOS.
In order to solve this, go to iOS folder & open your .xcworkspace file because now you need to add AirGoogleMaps to the project.
Go into your node_modules in your project and navigate to the AirGoogleMaps folder.
/node_modules/react-native-maps/lib/ios/AirGoogeMaps
Drag the AirGoogleMaps folder into your project. After dropping that folder into your project there will be a pop-up window in which you will specify to Create groups. (Not create folder references)
Then go inside xcode > build settings > Preprocessor Macros > & add HAVE_GOOGLE_MAPS=1 Preprocessor Macro to Build Settings
In order to use Google Maps, you will need to create a Google Maps API key.
After that go to AppDelegate.m & add below lines to your code
#import <GoogleMaps/GoogleMaps.h>
[GMSServices provideAPIKey:#"YOUR_API_KEY"]
Finally, change your MapView component
import MapView, {PROVIDER_GOOGLE} from "react-native-maps";
<MapView provider={PROVIDER_GOOGLE} />
That's it. Hope this will helps you. Feel free for doubts.
For more informations check this