Commit ba051c5e authored by root's avatar root

Add android-install.md

parent f7f136c1
...@@ -28,7 +28,7 @@ npm install @mapbox/react-native-mapbox-gl --save ...@@ -28,7 +28,7 @@ npm install @mapbox/react-native-mapbox-gl --save
## Installation Guides ## Installation Guides
* [Android](https://github.com/mapbox/react-native-mapbox-gl/blob/master/android/install.md) * [Android](android-install.md)
* [iOS](https://github.com/mapbox/react-native-mapbox-gl/blob/master/ios/install.md) * [iOS](https://github.com/mapbox/react-native-mapbox-gl/blob/master/ios/install.md)
* [Mapbox Example](https://github.com/mapbox/react-native-mapbox-gl/blob/master/example) (Not using CedarMaps; for demonstration purposes) * [Mapbox Example](https://github.com/mapbox/react-native-mapbox-gl/blob/master/example) (Not using CedarMaps; for demonstration purposes)
......
# Android Installation
## Gradle Setup
### project:build.gradle
We need to add some `repositories` in order to get our dependencies.
* `jcenter()`
* `https://jitpack.io`
* `http://maven.google.com`
```
allprojects {
repositories {
jcenter()
maven { url "$rootDir/../node_modules/react-native/android" }
maven { url "https://jitpack.io" }
maven { url "https://maven.google.com" }
}
}
```
### app:build.gradle
Add project under `dependencies`
```
dependencies {
implementation project(':mapbox-react-native-mapbox-gl') {
implementation ('com.squareup.okhttp3:okhttp:3.6.0') {
force = true
}
}
}
```
Update Android SDK version if you did `react-native init`, we want to be on `26` or higher.
* `compileSdkVersion 26`
* `buildToolsVersion "26.0.1"`
* `targetSdkVersion 26`
### settings.gradle
Include project, so gradle knows where to find the project
```
include ':mapbox-react-native-mapbox-gl'
project(':mapbox-react-native-mapbox-gl').projectDir = new File(rootProject.projectDir, '../node_modules/@mapbox/react-native-mapbox-gl/android/rctmgl')
```
### MainApplication.java
We need to register our package
Add `import com.mapbox.rctmgl.RCTMGLPackage;` as an import statement and
`new RCTMGLPackage()` in `getPackages()`
Here is an example
```
package com.rngltest;
import android.app.Application;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.shell.MainReactPackage;
import com.facebook.soloader.SoLoader;
import com.mapbox.rctmgl.RCTMGLPackage;
import java.util.Arrays;
import java.util.List;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new RCTMGLPackage()
);
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
SoLoader.init(this, /* native exopackage */ false);
}
}
```
Checkout the [example application](../example/README.md) to see how it's configured for an example.
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment