Dala.Platform.Location (dala v0.0.13)

Copy Markdown View Source

Device location (GPS / network).

Requires :location permission (request via Dala.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(Dala.Ui.Socket.t()) :: Dala.Ui.Socket.t()

Request a single location fix, then stop.

start(socket, opts \\ [])

@spec start(
  Dala.Ui.Socket.t(),
  keyword()
) :: Dala.Ui.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(Dala.Ui.Socket.t()) :: Dala.Ui.Socket.t()

Stop continuous location updates.