Mob.Location (mob v0.5.15)

Copy Markdown View Source

Device location (GPS / network).

Requires :location permission (request via Mob.Permissions.request/2).

Location updates arrive as:

handle_info({:location, %{lat: lat, lon: lon, accuracy: acc, altitude: alt}}, socket)
handle_info({:location, :error, reason}, socket)

iOS: CLLocationManager. Android: FusedLocationProviderClient.

Summary

Functions

Request a single location fix, then stop.

Start continuous location updates.

Stop continuous location updates.

Types

accuracy()

@type accuracy() :: :high | :balanced | :low

Functions

get_once(socket)

@spec get_once(Mob.Socket.t()) :: Mob.Socket.t()

Request a single location fix, then stop.

start(socket, opts \\ [])

@spec start(
  Mob.Socket.t(),
  keyword()
) :: Mob.Socket.t()

Start continuous location updates.

Options:

  • accuracy: :high | :balanced | :low (default :balanced)

Call stop/1 when done to save battery.

stop(socket)

@spec stop(Mob.Socket.t()) :: Mob.Socket.t()

Stop continuous location updates.