1212import com .facebook .react .bridge .ReactMethod ;
1313import com .facebook .react .bridge .Callback ;
1414import com .facebook .react .bridge .WritableMap ;
15+ import com .facebook .react .bridge .ReadableMap ;
1516import com .facebook .react .modules .core .DeviceEventManagerModule ;
1617import com .facebook .react .bridge .ReactContext ;
1718
1819import com .google .android .gms .tasks .OnCompleteListener ;
1920import com .google .android .gms .tasks .OnFailureListener ;
2021import com .google .android .gms .tasks .Task ;
22+ import com .google .firebase .FirebaseApp ;
23+ import com .google .firebase .FirebaseOptions ;
24+
2125import com .google .firebase .auth .AuthCredential ;
2226import com .google .firebase .auth .AuthResult ;
2327import com .google .firebase .auth .FacebookAuthProvider ;
@@ -42,6 +46,37 @@ public String getName() {
4246 return "Firestack" ;
4347 }
4448
49+ @ ReactMethod
50+ public void configureWithOptions (ReadableMap params , final Callback onSuccess ) {
51+ ReactContext mCtx = getReactApplicationContext ();
52+ FirebaseOptions .Builder builder = new FirebaseOptions .Builder ();
53+
54+ if (params .hasKey ("apiKey" )) {
55+ builder .setApiKey (params .getString ("apiKey" ));
56+ }
57+ if (params .hasKey ("gcmSenderID" )) {
58+ builder .setGcmSenderId (params .getString ("gcmSenderID" ));
59+ }
60+ if (params .hasKey ("storageBucket" )) {
61+ builder .setStorageBucket (params .getString ("storageBucket" ));
62+ }
63+ if (params .hasKey ("databaseURL" )) {
64+ builder .setDatabaseUrl (params .getString ("databaseURL" ));
65+ }
66+ if (params .hasKey ("clientID" )) {
67+ builder .setApplicationId (params .getString ("clientID" ));
68+ }
69+
70+ try {
71+ FirebaseApp app = FirebaseApp .initializeApp (mCtx , builder .build ());
72+ }
73+ catch (Exception e ){
74+
75+ }
76+
77+ onSuccess .invoke ();
78+ }
79+
4580 @ ReactMethod
4681 public void listenForAuth () {
4782 mAuthListener = new FirebaseAuth .AuthStateListener () {
0 commit comments