AndroidLocationPermissionRequester
Observes and requests foreground location permission on Android.
Android LocationProvider implementations hold a requester and expose it through LocationProvider.permission and LocationProvider.requestPermission.
Call close when the requester is no longer needed. The resolved activity also closes it when destroyed. Construct and use the requester on the main thread.