Skip to content

Commit 626d587

Browse files
Merge pull request react-native-maps#363 from locly/master
RN0.29 compatability
2 parents 2a9de7b + 70103e7 commit 626d587

File tree

5 files changed

+15
-19
lines changed

5 files changed

+15
-19
lines changed

android/lib/build.gradle

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
apply plugin: 'com.android.library'
2-
apply from: 'gradle-maven-push.gradle'
32

43
android {
54
compileSdkVersion 23
@@ -16,7 +15,7 @@ android {
1615
}
1716

1817
dependencies {
19-
compile 'com.facebook.react:react-native:0.27.2'
18+
compile 'com.facebook.react:react-native:+'
2019
compile "com.google.android.gms:play-services-base:8.4.0"
2120
compile 'com.google.android.gms:play-services-maps:8.4.0'
2221
}

android/lib/src/main/java/com/airbnb/android/react/maps/AirMapManager.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.airbnb.android.react.maps;
22

33
import android.view.View;
4-
import android.app.Activity;
4+
import android.content.Context;
55

66
import com.facebook.react.bridge.Arguments;
77
import com.facebook.react.bridge.ReactContext;
@@ -41,19 +41,19 @@ public class AirMapManager extends ViewGroupManager<AirMapView> {
4141

4242
private ReactContext reactContext;
4343

44-
private Activity reactActivity;
44+
private Context appContext;
4545
private AirMapMarkerManager markerManager;
4646
private AirMapPolylineManager polylineManager;
4747
private AirMapPolygonManager polygonManager;
4848
private AirMapCircleManager circleManager;
4949

5050
public AirMapManager(
51-
Activity activity,
51+
Context context,
5252
AirMapMarkerManager markerManager,
5353
AirMapPolylineManager polylineManager,
5454
AirMapPolygonManager polygonManager,
5555
AirMapCircleManager circleManager) {
56-
this.reactActivity = activity;
56+
this.appContext = context;
5757
this.markerManager = markerManager;
5858
this.polylineManager = polylineManager;
5959
this.polygonManager = polygonManager;
@@ -70,12 +70,12 @@ protected AirMapView createViewInstance(ThemedReactContext context) {
7070
reactContext = context;
7171

7272
try {
73-
MapsInitializer.initialize(reactActivity);
73+
MapsInitializer.initialize(this.appContext);
7474
} catch (Exception e) {
7575
e.printStackTrace();
7676
emitMapError("Map initialize error", "map_init_error");
7777
}
78-
AirMapView view = new AirMapView(context, reactActivity, this);
78+
AirMapView view = new AirMapView(context, this.appContext, this);
7979

8080
return view;
8181
}

android/lib/src/main/java/com/airbnb/android/react/maps/AirMapView.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.airbnb.android.react.maps;
22

3-
import android.app.Activity;
43
import android.content.pm.PackageManager;
54
import android.content.res.ColorStateList;
65
import android.graphics.Bitmap;
@@ -16,6 +15,7 @@
1615
import android.view.ScaleGestureDetector;
1716
import android.view.View;
1817
import android.view.View.OnLayoutChangeListener;
18+
import android.content.Context;
1919

2020
import android.view.ViewGroup;
2121
import android.widget.ImageView;
@@ -88,8 +88,8 @@ public class AirMapView extends MapView implements GoogleMap.InfoWindowAdapter,
8888

8989
final EventDispatcher eventDispatcher;
9090

91-
public AirMapView(ThemedReactContext context, Activity activity, AirMapManager manager) {
92-
super(activity);
91+
public AirMapView(ThemedReactContext context, Context appContext, AirMapManager manager) {
92+
super(appContext);
9393
this.manager = manager;
9494
this.context = context;
9595

android/lib/src/main/java/com/airbnb/android/react/maps/MapsPackage.java

+3-6
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,8 @@
1313
import java.util.List;
1414

1515
public class MapsPackage implements ReactPackage {
16-
private Activity reactActivity = null;
17-
18-
public MapsPackage(Activity activity) {
19-
reactActivity = activity;
20-
}
16+
public MapsPackage(Activity activity) { } // backwards compatability
17+
public MapsPackage() { }
2118

2219
@Override
2320
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
@@ -37,7 +34,7 @@ public List<ViewManager> createViewManagers(ReactApplicationContext reactContext
3734
AirMapPolygonManager polygonManager = new AirMapPolygonManager(reactContext);
3835
AirMapCircleManager circleManager = new AirMapCircleManager(reactContext);
3936
AirMapManager mapManager = new AirMapManager(
40-
reactActivity,
37+
reactContext.getBaseContext(),
4138
annotationManager,
4239
polylineManager,
4340
polygonManager,

docs/installation.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ To install using Cocoapods, simply insert the following line into your `Podfile`
7070
protected List<ReactPackage> getPackages() {
7171
return Arrays.<ReactPackage>asList(
7272
new MainReactPackage(),
73-
new MapsPackage(this) // <-- Add this!
73+
new MapsPackage() // <-- Add this!
7474
);
7575
}
7676
}
@@ -88,7 +88,7 @@ To install using Cocoapods, simply insert the following line into your `Podfile`
8888
.setBundleAssetName("index.android.bundle")
8989
.setJSMainModuleName("index.android")
9090
.addPackage(new MainReactPackage())
91-
.addPackage(new MapsPackage(this)) // <---- and This!
91+
.addPackage(new MapsPackage()) // <---- and This!
9292
.setUseDeveloperSupport(BuildConfig.DEBUG)
9393
.setInitialLifecycleState(LifecycleState.RESUMED)
9494
.build();

0 commit comments

Comments
 (0)