1
1
package io .fullstack .firestack ;
2
2
3
- import java .util .Date ;
4
- import java .util .HashMap ;
5
3
import java .util .Map ;
4
+ import java .util .HashMap ;
6
5
7
6
import android .util .Log ;
8
7
import android .content .Context ;
9
8
import android .support .annotation .Nullable ;
10
9
10
+ import com .facebook .react .bridge .Callback ;
11
11
import com .facebook .react .bridge .Arguments ;
12
+ import com .facebook .react .bridge .ReadableMap ;
13
+ import com .facebook .react .bridge .WritableMap ;
14
+ import com .facebook .react .bridge .ReactMethod ;
12
15
import com .facebook .react .bridge .LifecycleEventListener ;
13
16
import com .facebook .react .bridge .ReactApplicationContext ;
14
17
import com .facebook .react .bridge .ReactContextBaseJavaModule ;
15
- import com .facebook .react .bridge .ReactMethod ;
16
- import com .facebook .react .bridge .Callback ;
17
- import com .facebook .react .bridge .WritableMap ;
18
- import com .facebook .react .bridge .ReadableMap ;
19
- import com .facebook .react .bridge .ReactContext ;
20
18
21
19
import com .google .android .gms .common .ConnectionResult ;
22
20
import com .google .android .gms .common .GoogleApiAvailability ;
@@ -32,16 +30,10 @@ interface KeySetterFn {
32
30
@ SuppressWarnings ("WeakerAccess" )
33
31
public class FirestackModule extends ReactContextBaseJavaModule implements LifecycleEventListener {
34
32
private static final String TAG = "Firestack" ;
35
- private Context context ;
36
- private ReactContext mReactContext ;
37
33
private FirebaseApp app ;
38
34
39
- public FirestackModule (ReactApplicationContext reactContext , Context context ) {
35
+ public FirestackModule (ReactApplicationContext reactContext ) {
40
36
super (reactContext );
41
- this .context = context ;
42
- mReactContext = reactContext ;
43
-
44
- Log .d (TAG , "New instance" );
45
37
}
46
38
47
39
@ Override
@@ -69,7 +61,7 @@ public void configureWithOptions(final ReadableMap params, @Nullable final Callb
69
61
Log .i (TAG , "configureWithOptions" );
70
62
71
63
FirebaseOptions .Builder builder = new FirebaseOptions .Builder ();
72
- FirebaseOptions defaultOptions = FirebaseOptions .fromResource (this . context );
64
+ FirebaseOptions defaultOptions = FirebaseOptions .fromResource (getReactApplicationContext (). getBaseContext () );
73
65
74
66
if (defaultOptions == null ) {
75
67
defaultOptions = new FirebaseOptions .Builder ().build ();
@@ -154,7 +146,7 @@ public String setKeyOrDefault(
154
146
try {
155
147
Log .i (TAG , "Configuring app" );
156
148
if (app == null ) {
157
- app = FirebaseApp .initializeApp (this . context , builder .build ());
149
+ app = FirebaseApp .initializeApp (getReactApplicationContext (). getBaseContext () , builder .build ());
158
150
}
159
151
Log .i (TAG , "Configured" );
160
152
@@ -189,14 +181,14 @@ public void serverValue(@Nullable final Callback onComplete) {
189
181
public void onHostResume () {
190
182
WritableMap params = Arguments .createMap ();
191
183
params .putBoolean ("isForground" , true );
192
- Utils .sendEvent (mReactContext , "FirestackAppState" , params );
184
+ Utils .sendEvent (getReactApplicationContext () , "FirestackAppState" , params );
193
185
}
194
186
195
187
@ Override
196
188
public void onHostPause () {
197
189
WritableMap params = Arguments .createMap ();
198
190
params .putBoolean ("isForground" , false );
199
- Utils .sendEvent (mReactContext , "FirestackAppState" , params );
191
+ Utils .sendEvent (getReactApplicationContext () , "FirestackAppState" , params );
200
192
}
201
193
202
194
@ Override
@@ -208,6 +200,8 @@ public void onHostDestroy() {
208
200
public Map <String , Object > getConstants () {
209
201
final Map <String , Object > constants = new HashMap <>();
210
202
constants .put ("googleApiAvailability" , getPlayServicesStatus ());
203
+
204
+ // TODO remove once this has been moved on ios
211
205
constants .put ("serverValueTimestamp" , ServerValue .TIMESTAMP );
212
206
return constants ;
213
207
}
0 commit comments