最近我遇到了这个问题,我的问题通过对 pod 文件的一些更改解决了。
source 'https://github.com/CocoaPods/Specs.git'
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
target 'AppName' do
pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'React', :path => '../node_modules/react-native', :subspecs => [
'Core',
'RCTText',
'RCTImage',
'RCTAnimation',
'RCTActionSheet',
'RCTLinkingIOS',
'RCTSettings',
'RCTVibration',
'RCTNetwork',
'RCTWebSocket',
'DevSupport',
'BatchedBridge',
'RCTGeolocation',
]
pod 'GoogleMaps' # Remove this line if you don't want to support GoogleMaps on iOS
pod 'react-native-maps', path: '../node_modules/react-native-maps'
pod 'react-native-google-maps', path: '../node_modules/react-native-maps' # If you need GoogleMaps support on iOS
end
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'react-native-google-maps'
target.build_configurations.each do |config|
config.build_settings['CLANG_ENABLE_MODULES'] = 'No'
end
end
if target.name == "React"
target.remove_from_project
end
end
end
同样在您的 JS 文件中,您的 map 标签必须是这样的
<MapView
provider={PROVIDER_GOOGLE}
style={styles.map}
// provider='google'
// mapType='standard'
...
>
请注意,您的 pod 文件必须正确链接。不需要手动添加任何东西。您可以使用此命令删除您的 pod 文件和路径
pod deintegrate
和
pod clean
并安装 Cocoapods-Deintegrate Plugin 和 Cocoapods-Clean Plugin
在您的终端上使用以下命令进行安装。
sudo gem install cocoapods-deintegrate
Cocoapods-清洁插件
在您的终端上使用以下命令进行安装。
sudo gem install cocoapods-clean
希望这可以帮助你。