diff --git a/android/src/main/java/io/invertase/firebase/RNFirebaseModule.java b/android/src/main/java/io/invertase/firebase/RNFirebaseModule.java index 4ea94ab7..fea94bc9 100644 --- a/android/src/main/java/io/invertase/firebase/RNFirebaseModule.java +++ b/android/src/main/java/io/invertase/firebase/RNFirebaseModule.java @@ -73,10 +73,15 @@ public class RNFirebaseModule extends ReactContextBaseJavaModule { } } + @ReactMethod + public void getPlayServicesStatus(Promise promise) { + promise.resolve(getPlayServicesStatusMap()); + } + /** * @return */ - private WritableMap getPlayServicesStatus() { + private WritableMap getPlayServicesStatusMap() { GoogleApiAvailability gapi = GoogleApiAvailability.getInstance(); final int status = gapi.isGooglePlayServicesAvailable(getReactApplicationContext()); WritableMap result = Arguments.createMap(); @@ -176,7 +181,7 @@ public class RNFirebaseModule extends ReactContextBaseJavaModule { } constants.put("apps", appMapsList); - constants.put("playServicesAvailability", getPlayServicesStatus()); + constants.put("playServicesAvailability", getPlayServicesStatusMap()); return constants; } } diff --git a/src/modules/utils/index.js b/src/modules/utils/index.js index 2e6f2921..b680075d 100644 --- a/src/modules/utils/index.js +++ b/src/modules/utils/index.js @@ -55,6 +55,11 @@ export default class RNFirebaseUtils extends ModuleBase { } } + getPlayServicesStatus(): Promise { + if (isIOS) return Promise.resolve(null); + return FirebaseCoreModule.getPlayServicesStatus(); + } + promptForPlayServices() { if (isIOS) return null; return FirebaseCoreModule.promptForPlayServices();