Skip to content

Commit

Permalink
Allow coarse location
Browse files Browse the repository at this point in the history
  • Loading branch information
janbina committed Apr 23, 2023
1 parent 63ca154 commit 61f1347
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,12 @@ actual class LocationTracker(
}

@SuppressLint("MissingPermission")
actual suspend fun startTracking() {
permissionsController.providePermission(Permission.LOCATION)
actual suspend fun startTracking(allowCoarseLocation: Boolean) {
val permission = when {
allowCoarseLocation -> Permission.COARSE_LOCATION
else -> Permission.LOCATION
}
permissionsController.providePermission(permission)
// if permissions request failed - execution stops here

isStarted = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@ import kotlinx.coroutines.flow.Flow
expect class LocationTracker {
val permissionsController: PermissionsController

suspend fun startTracking() // can be suspended for request permission
// can be suspended for request permission
suspend fun startTracking(allowCoarseLocation: Boolean = false)

fun stopTracking()

fun getLocationsFlow(): Flow<LatLng>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,12 @@ actual class LocationTracker(
desiredAccuracy = accuracy
}

actual suspend fun startTracking() {
permissionsController.providePermission(Permission.LOCATION)
actual suspend fun startTracking(allowCoarseLocation: Boolean) {
val permission = when {
allowCoarseLocation -> Permission.COARSE_LOCATION
else -> Permission.LOCATION
}
permissionsController.providePermission(permission)
// if permissions request failed - execution stops here

locationManager.startUpdatingLocation()
Expand Down

0 comments on commit 61f1347

Please sign in to comment.