Releases: swiftuiux/swift-async-corelocation-streamer
Releases · swiftuiux/swift-async-corelocation-streamer
Async location streamer using new concurrency model in Swift
Release notes Version 2.1.0
-
Pre-configured
CLLocationManager
Support- Pass a pre-configured
CLLocationManager
instance toLocationManagerAsync
for complete control over the location manager's settings.
- Pass a pre-configured
-
Asynchronous Location Streaming
- Stream location updates asynchronously using
AsyncStream
for efficient real-time data handling.
- Stream location updates asynchronously using
-
Customizable Update Strategies
- Choose how location results are retained with the
Strategy
enum:.keepLast
: Retains only the latest location update..keepAll
: Retains all location updates during the session.
- Choose how location results are retained with the
-
Permission Management
- Automatically handles permission requests for location updates, ensuring smooth user experience.
- Detects and handles denied or restricted permissions with error reporting.
-
Background Location Support
- Enables continuous location updates in the background when configured with
allowsBackgroundLocationUpdates
.
- Enables continuous location updates in the background when configured with
-
Stream State Management
- Tracks the current state of location streaming (
idle
orstreaming
). - Supports starting, stopping, and restarting streams with ease.
- Tracks the current state of location streaming (
-
Seamless Integration with SwiftUI
- Inject
LocationStreamer
into SwiftUI views using@EnvironmentObject
for declarative UI updates.
- Inject
-
Custom Initialization Options
- Flexible initialization with parameters for accuracy, activity type, distance filter, and background updates.
-
Error Handling
- Provides descriptive error types, including
CLError
and custom errors for denied permissions or invalid configurations.
- Provides descriptive error types, including
Async location streamer using new concurrency model in Swif
Code refactoring
Async location streamer using new concurrency model in Swift
Updated documentation
Async location streamer using new concurrency model in Swift
Added support for passing a custom CLLocationManagerDelegate
Async location streamer using new concurrency model in Swift
Code refactoring
Processing additional errors
Async location streamer using new concurrency model in Swift
Added strategy
Async location streamer using new concurrency model in Swift
Support for iOS from 14.1
Async location streamer using new concurrency model in Swift
Code refactoring
Handling CLError errors
Async location streamer using new concurrency model in Swift
Code improvements
Async location streamer using new concurrency model in Swift
Handling of expected and unexpected task cancellation