registerGnssStatusCallback

@RequiresPermission(value = "android.permission.ACCESS_FINE_LOCATION")
open fun registerGnssStatusCallback(@NonNull locationManager: @NonNull LocationManager, callback: @NonNull GnssStatusCompat.Callback, @NonNull handler: @NonNull Handler): Boolean(source)

Registers a platform agnostic GnssStatusCompat.Callback. See addGpsStatusListener and registerGnssStatusCallback.

See also


@RequiresPermission(value = "android.permission.ACCESS_FINE_LOCATION")
open fun registerGnssStatusCallback(@NonNull locationManager: @NonNull LocationManager, @NonNull executor: @NonNull Executor, callback: @NonNull GnssStatusCompat.Callback): Boolean(source)

Registers a platform agnostic GnssStatusCompat.Callback. See addGpsStatusListener and registerGnssStatusCallback.

Internally, this API will always utilize GnssStatus APIs and instances on Android N and above, and will always utilize GpsStatus APIs and instances below Android N. Callbacks will always occur on the given executor.

If invoked on Android M or below, this will result in GpsStatus registration being run on either the current Looper or main Looper. If the thread this function is invoked on is different from that Looper, the caller must ensure that the Looper thread cannot be blocked by the thread this function is invoked on. The easiest way to avoid this is to ensure this function is invoked on a Looper thread.

Throws

on Android M or below, if the current Looper or main Looper is blocked by the thread this function is invoked on