File: map-view.md | Updated: 11/15/2025
Hide navigation
Search
Ctrl K
Home Guides EAS Reference Learn
Reference version
SDK 53
Archive Expo Snack Discord and Forums Newsletter
A library that provides a Map component that uses Google Maps on Android and Apple Maps or Google Maps on iOS.
Android
iOS
Bundled version:
1.20.1
Copy page
react-native-maps provides a Map component that uses Google Maps on Android and Apple Maps or Google Maps on iOS.
No additional setup is required when testing your project using Expo Go. However, to deploy the app binary on app stores additional steps are required for Google Maps. For more information, see the instructions below .
Terminal
Copy
- npx expo install react-native-maps
If you are installing this in an existing React Native app
, make sure to install expo
in your project. Then, follow the installation instructions
provided in the library's README or documentation.
See full documentation at react-native-maps/react-native-maps
.
MapView
Copy
Open in Snack
import React from 'react'; import MapView from 'react-native-maps'; import { StyleSheet, View } from 'react-native'; export default function App() { return ( <View style={styles.container}> <MapView style={styles.map} /> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, }, map: { width: '100%', height: '100%', }, });
Show More
If you have already registered a project for another Google service on Android, such as Google Sign In, you enable the Maps SDK for Android on your project and jump to step 4.
1
2
For Google Play Store
For development builds
If you are deploying your app to the Google Play Store, you'll need to upload your app binary to Google Play console at least once. This is required for Google to generate your app signing credentials.
Go to the Google Play Console
(your app) > Release > Setup > App integrity > App Signing.
Copy the value of SHA-1 certificate fingerprint.
If you have already created a development build , your project will be signed using a debug keystore.
After the build is complete, go to your project's dashboard , then, under Configure > click Credentials.
Under Application Identifiers, click your project's package name and under Android Keystore copy the value of SHA-1 Certificate Fingerprint.
3
android.package from app.json (for example: com.company.myapp) to the package name field.4
Copy your API Key into your project to either a .env file and then add it to your app.json under the android.config.googleMaps.apiKey field like or copy it:
{ "android": { "config": { "googleMaps": { "apiKey": "process.env.GOOGLE_MAPS_API_KEY" } } } }
In your code, import { PROVIDER_GOOGLE } from react-native-maps and add the property provider={PROVIDER_GOOGLE} to your <MapView>. This property works on both Android and iOS.
Rebuild the app binary (or re-submit to the Google Play Store in case your app is already uploaded). An easy way to test if the configuration was successful is to do an emulator build .
If you have already registered a project for another Google service on iOS, such as Google Sign In, you enable the Maps SDK for iOS on your project and jump to step 3.
1
2
ios.bundleIdentifier from app.json (for example: com.company.myapp) to the bundle ID field.3
Copy your API Key into your project to either a .env file and then add it to your app.json under the ios.config.googleMapsApiKey field like or copy it:
{ "ios": { "config": { "googleMapsApiKey": "process.env.GOOGLE_MAPS_API_KEY" } } }
In your code, import { PROVIDER_GOOGLE } from react-native-maps and add the property provider={PROVIDER_GOOGLE} to your <MapView>. This property works on both Android and iOS.
Rebuild the app binary. An easy way to test if the configuration was successful is to do a simulator build .