If you are using autolinking feature introduced in React-Native 0.60.0 you do not need any additional steps.
We've set up default Mapbox dependencies for you.
Feel free to check em out here
However, it is also possible to set a custom version of the Mapbox SDK
Which will overwrite our defaults.
Add something like the following to your android/build.gradle > buildscript > ext section:
// android/build.gradle
buildscript {
// ... stuff
ext {
// ... stuff
rnmbglMapboxLibs = {
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.7.1'
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-services:5.8.0'
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-turf:5.8.0'
implementation 'com.mapbox.mapboxsdk:mapbox-android-gestures:0.7.0'
}
rnmbglMapboxPlugins = {
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.8.0'
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.14.0'
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-markerview-v9:0.4.0'
}
// ... more stuff?
}
}NOTICE, If you are using newer versions of the SDK, you will need to authorize your download of the Maps SDK via a secret access token with the DOWNLOADS:READ scope.
This guide explains how to Configure credentials and Configure your secret token.
Then under section allprojects/repositories add your data:
// android/build.gradle
allprojects {
repositories {
// ...other repos
maven {
url 'https://api.mapbox.com/downloads/v2/releases/maven'
authentication {
basic(BasicAuthentication)
}
credentials {
// Do not change the username below.
// This should always be `mapbox` (not your username).
username = 'mapbox'
// Use the secret token you stored in gradle.properties as the password
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: ""
}
}
// ...even more repos?
}
}Feel free to check out the /example projects android/build.gradle for inspiration!
MapLibre is an OSS fork of MapboxGL
Overwrite mapbox dependecies within your android/build.gradle > buildscript > ext section
buildscript {
ext {
// ...
rnmbglMapboxLibs = {
implementation ("org.maplibre.gl:android-sdk:9.2.1")
implementation ("com.mapbox.mapboxsdk:mapbox-sdk-turf:5.3.0")
}
rnmbglMapboxPlugins = {
implementation ("com.mapbox.mapboxsdk:mapbox-android-gestures:0.7.0")
implementation ("com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v9:0.12.0") {
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-sdk'
}
implementation ("com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.8.0") {
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-sdk'
}
implementation ("com.mapbox.mapboxsdk:mapbox-android-plugin-markerview-v9:0.4.0") {
exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-sdk'
}
}
}
}
allprojects {
repositories {
// ...
maven {
url = "https://dl.bintray.com/maplibre/maplibre-gl-native"
}
}
}Feel free to check out the /example projects android/build.gradle for inspiration!