react-native-geolocation icon indicating copy to clipboard operation
react-native-geolocation copied to clipboard

Android crash when I set the locationProvider to playServices(Some times)

Open TianFengRL opened this issue 2 years ago • 1 comments

Environment

Galaxy S22 Ultra Galaxy S20 FE 5G Galaxy A73 5G Redmi K40

Platforms

Android

Versions

  • Android:
  • iOS:
  • react-native-geolocation:3.0.5
  • react-native:18.1.0
  • react:0.70.5

Description

This bug is not inevitable. I can't reproduce it. But it appears many times in the firebase crash statistics.

Location: PlayServicesLocationManager$1.onLocationResult com.reactnativecommunity.geolocation PlayServicesLocationManager.java:74

log: Fatal Exception: java.lang.NullPointerException: Listener must not be null at com.google.android.gms.common.internal.Preconditions.checkNotNull(com.google.android.gms:play-services-basement@@18.1.0:2) at com.google.android.gms.common.api.internal.ListenerHolders.createListenerKey(com.google.android.gms:play-services-base@@18.0.1:1) at com.google.android.gms.location.FusedLocationProviderClient.removeLocationUpdates(com.google.android.gms:play-services-location@@20.0.0:6) at com.reactnativecommunity.geolocation.PlayServicesLocationManager$1.onLocationResult(PlayServicesLocationManager.java:74) at com.google.android.gms.internal.location.zzaw.notifyListener(com.google.android.gms:play-services-location@@20.0.0:2) at com.google.android.gms.common.api.internal.ListenerHolder.zaa(com.google.android.gms:play-services-base@@18.0.1:2) at com.google.android.gms.common.api.internal.zacb.run(:4) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:236) at android.app.ActivityThread.main(ActivityThread.java:8057) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:656) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:967)

Reproducible Demo

Geolocation.getCurrentPosition( (info) => { }, (error) => { }, { enableHighAccuracy: true, maximumAge: 20 * 1000, timeout: 10 * 1000, }, );

TianFengRL avatar Mar 02 '23 09:03 TianFengRL

This will help https://www.youtube.com/watch?v=E7X9DjezSR0

BraveEvidence avatar Mar 03 '23 13:03 BraveEvidence

Same here. It was not happening before when the locationProvider was set 'auto'

mrsasuuBeast avatar Mar 17 '23 10:03 mrsasuuBeast