Hello,
I'm experiencing an issue with the Apple Maps URL scheme when using raw latitude and longitude coordinates in the daddr parameter.
Until recently, using a URL like this worked reliably:
https://maps.apple.com/?daddr=37.7749,-122.4194
This would open Apple Maps and show directions from the current location to the specified coordinates.
However, on recent iOS versions, this URL no longer behaves as expected.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello,
I’ve done a lot of testing of location services running in background with various settings, but in all scenarios location updates pause after a couple of hours, especially overnight In sleep mode.
My app, for personal safety, requires regular location updates to 5m accuracy every minute. The only solution I have found is to keep the app in foreground.
Location always stops updating. Background mode stops updating. Live location services stops updating.
Is there a solution I may have missed other than keeping app in foreground?
thank you,
Brendan
Hi all,
We’re running into a challenge with our iOS app DriveSmarter, which uses background location updates when connected to a physical Bluetooth device (e.g., dash cam, radar detector). For battery efficiency, we disable location services in the background when no device is connected. The problem we’re now facing is:
How can we programmatically re-enable location services when a Bluetooth device reconnects while the app is still in the background?
From what I understand, Core Location doesn’t allow re-enabling background location updates unless the app returns to the foreground. But our core use case requires this to happen seamlessly in the background when the user starts driving and the device connects again.
To clarify:
We stop location updates when the device disconnects.
We want to resume location updates only when the device reconnects, even if the app is still in the background.
Manually bringing the app to the foreground is not a reliable or user-friendly option.
So my questions:
Is it possible to programmatically restart background location services upon a Bluetooth connection event while staying in the background?
If not, are there any best practices or Apple-recommended alternatives to achieve a similar result?
Any guidance, patterns, or creative solutions would be greatly appreciated!
Thanks in advance
Our backend management system uses Google for Location, and Apple Maps is just one of the solutions in our map component.
When should I convert coordinates to GCJ02?
Maybe you would say that when you are in mainland China?
BUT NOT AT ALL!
What if the user does not enable location permission?
What if the user has not inserted a SIM card? Or not Chinese SIM card but location in China?
OR the user location in China, But use VPN with en overseas IP?
All solutions are not perfect, unless you open the API to developers and tell us whether Apple Maps currently uses the wgs84 coordinate system or gcj02, which is the most reliable.
Topic:
App & System Services
SubTopic:
Maps & Location
Tags:
MapKit
Maps and Location
Apple Maps Server API
Hey All!
I keep receiving an email from Apple stating "You have a missing purpose string in your Info.plist" for the key "NSLocationAlwaysAndWhenInUseUsageDescription". The thing is, though, that we are setting that value within our build Info.plist. The data in that value is even reflected into the application after build, with the correct purpose string showing up when requesting location services.
We currently do our builds via Azure Devops CI/CD, where we use xcodebuild for this process. The archive also generates an Info.plist without the location key, so I tried manually inserting it before deployment. Also no luck.
Anyone else had this issue or know how to resolve it?
Snippet to show how the location key is currently set during build:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Application uses location data for accurate maps display</string>
</dict>
</plist>
Thanks!
Topic:
App Store Distribution & Marketing
SubTopic:
TestFlight
Tags:
App Store
App Review
Maps and Location
Hello Experts,
I am in need of your help with this feedback from the App Reviewer.
Issue Description: One or more purpose strings in the app do not sufficiently explain the use of protected resources. Purpose strings must clearly and completely describe the app's use of data and, in most cases, provide an example of how the data will be used.
Next Steps: Update the location purpose string to explain how the app will use the requested information and provide a specific example of how the data will be used. See the attached screenshot.
Resources: Purpose strings must clearly describe how an app uses the ability, data, or resource. The following are hypothetical examples of unclear purpose strings that would not pass review:
"App would like to access your Contacts"
"App needs microphone access"
Feedback #2
"Regarding 5.1.1, we understand why your app needs access to location. However, the permission request alert does not sufficiently explain this to your users before accessing the location.
To resolve this issue, it would be appropriate to revise the location permission request, specify why your app needs access, and provide an example of how your app will use the user's data.
To learn more about purpose string requirements, watch a video from App Review with tips for writing clear purpose strings. We look forward to reviewing your app once the appropriate changes have been made."
May I know how can I update my purpose string? I appealed on the first feedback by explaining what is the purpose of it but got the Feedback #2.
TYIA!!
Good morning everyone,
I am developing a Flutter app for Android and iOS.
When I press a button, the app detects the location of the device (obviously with permissions already granted).
On Android everything works correctly.
On iOS, however, when I press the button for the first time after opening the app, the location is detected after about 30-50 seconds.
On the other hand, if I repeat the operation later, the response time is drastically reduced (only a few seconds).
I am using the location package (https://pub.dev/packages/location), and the code to get the location is as follows:
var currentLocation = await location.getLocation();
Has anyone experienced this problem before or knows how to solve it?
Thank you very much!
Federico
Our IMDF indoor maps submission is stuck on "Occupants data in review" for several months and I can't ahold of that team (their email doesn't work). I've been told they have a backlog, but the other steps were pretty fast. How long is the expected completion? Thank you!
Hi everyone,
I’m building an iOS 18+ app in Xcode where Apple Maps is central. My goal is to start with the default Apple Maps experience (map view, search bar, pins, directions sheet, etc.) and then customize it for my project.
I tried coding it from scratch using MapKit and SwiftUI, but I wasn’t able to get full parity with the basic features of the Maps app.
My questions:
Is there any sample project, template, or reference that provides the default Apple Maps functionality (views + interactions) as a baseline?
Can I copy these into my Xcode project and then extend/customize them?
If not, what’s the recommended best practice to get as close as possible to the native Maps app before adding my own features?
Any guidance, sample code, or documentation links would be greatly appreciated.
I have the following code snippet with a simple map and map reader that shows a pin on the map when the user selects a location
struct MapReaderTest: View {
@State private var loc: CLLocationCoordinate2D? = nil
var body: some View {
MapReader { proxy in
Map {
UserAnnotation()
if let loc {
Marker(coordinate: loc, label: { Text("Marker") })
}
}
.onTapGesture { position in
let position = proxy.convert(position, from: .local)
loc = position
}
}
}
}
This snippet compiles and works perfectly fine using Xcode version 16.4 building for iOS 18.0 and running on a device. This snippet also works for me when I build using Xcode 26 Beta and run in the canvas or simulator, however it does not work when I compile using Xcode 26 and run it on a physical device(I built and tested for both iOS 18.6 and iOS 26 Beta)
Has anyone else had a similar issue / have any ideas for work arounds?
Pinned 2 homes address for the same contact
Steps
Initial check in Apple Maps
No saved places or pinned addresses appear.
Open Personal Contacts
You have two addresses stored in your contact card: Main and Home.
Pin & Edit “Main”
You pinned the Main address in Maps.
Refined the location on the map.
Renamed it (but still saved under the type “My Home”).
Open “Home” Address in Contacts
Refined the location again.
Changed the type to “My Home.”
Attempted to rename, but no option to change the label.
Final Saved Places View
Shows two entries both called “Main.”
Opening either of them displays the same details for the Home address.
Saved Places list only shows the full address text, without the ability to rename them inside Maps.
Results
Both addresses appear duplicated with the same name (“Main”), even though they point to different underlying addresses.
When selecting either entry, Apple Maps incorrectly shows the same Home address details.
The Saved Places section does not allow renaming; it defaults to showing the full address string.
Issues Identified
Sync Conflict Between Contacts & Maps
Apple Maps pulls labels/types from Contacts, but the edits don’t update consistently across apps.
Duplicate Naming Bug
Both “Main” and “Home” collapse into “Main” in Saved Places, making them indistinguishable.
One-to-One Mapping Failure
Regardless of which saved place you open, Maps shows the same Home entry, meaning the system isn’t correctly binding each saved place to its respective contact address.
Renaming Limitation
Apple Maps doesn’t allow renaming saved addresses directly — it relies on Contacts. Since Contacts only supports preset labels (Home, Work, School, etc.), custom naming is blocked.
I'm experiencing app crashes when calling the CLMonitor initialization function:
let monitor = await CLMonitor("my_monitor")
According to WWDC 2023: Meet Core Location Monitor, when creating a CLMonitor object with the same identifier, it should access the existing monitor without any mention of app crashes or buggy behavior.
However, in my actual testing, attempting to create a CLMonitor object with the same identifier immediately causes an app crash.
Here's part of the crash log:
Last Exception Backtrace:
0 CoreFoundation 0x19c4ab21c __exceptionPreprocess + 164 (NSException.m:249)
1 libobjc.A.dylib 0x199945abc objc_exception_throw + 88 (objc-exception.mm:356)
2 Foundation 0x19b7a9670 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 288 (NSException.m:252)
3 CoreLocation 0x1aa25cbb4 +[CLMonitor _requestMonitorWithConfiguration:locationManager:completion:] + 516 (CLMonitor.mm:516)
4 libswiftCoreLocation.dylib 0x22bf6085c CLMonitor.init(_:) + 488 (CLMonitor.swift:280)
5 libswiftCoreLocation.dylib 0x22bf604b9 <deduplicated_symbol> + 1
6 MiniPlengi 0x106372ec9 closure #1 in static CLMonitor.loplatMonitor.getter + 1 (CLMonitor+Extensions.swift:31)
7 MiniPlengi 0x1062ce325 0x106290000 + 254757
8 MiniPlengi 0x1062f6a29 specialized thunk for @escaping @isolated(any) @callee_guaranteed @async () -> (@out A) + 1 (/<compiler-generated>:0)
9 MiniPlengi 0x1062ce325 0x106290000 + 254757
10 libswift_Concurrency.dylib 0x1a7f75241 completeTaskWithClosure(swift::AsyncContext*, swift::SwiftError*) + 1 (Task.cpp:537)
Furthermore, even though I've written code to create CLMonitor objects based on a singleton structure to handle these crash cases, the app still crashes:
extension CLMonitor {
static var loplatMonitor: CLMonitor {
get async {
struct Static {
static var monitor: CLMonitor?
static var initializationTask: Task<CLMonitor, Never>?
}
// If already initialized
if let monitor = Static.monitor {
return monitor
}
// If there's an initialization task in progress, wait for its result
if let task = Static.initializationTask {
return await task.value
}
// Create new initialization task
let task = Task {
let monitor = await CLMonitor("my_monitor")
Static.monitor = monitor
Static.initializationTask = nil // Clean up task after completion
return monitor
}
Static.initializationTask = task
return await task.value
}
}
}
Is the CLMonitor API still in a stabilization phase and not recommended for production release? I would appreciate guidance on the correct usage.
If these issues are expected to persist, I'm wondering if I should continue using the existing CLCircularRegion API instead.
Any insights or recommendations would be greatly appreciated.
Hello,
We are a software and hardware development company for the forestry and environmental sectors. We have been based in Quebec (Canada) for over 30 years now. Our Canadian market covers Quebec, Ontario, and the Maritime provinces in the east. We are currently expanding across Canada and into the northern United States. We are on Android platforms with several map and data entry applications.
To ensure the success of our expansion, we aim to become part of the Apple family, which is why we are contacting you today.
We have developed our own GNSS receiver to increase the location accuracy of our users. It uses Bluetooth BLE to communicate with mobile devices and a high-precision GPS that transmits its position using the NMEA protocol. We would like this device to be compatible with an iPhone/iPad. We have developed a mock location application in MAUI (multi-platform). Based on our interpretation of your documentation, we understand that the concept of mock location does not exist at Apple. How can we ensure that our Bluetooth GNSS device is compatible with your iPhone/iPad devices and that they can use the position of the Bluetooth device rather than the internal GPS of your devices?
We are a reseller for Juniper Systems, and we know that they have an app on the App Store that has the same features as our product.
https://junipersys.com/index.php/support/article/14709
We look forward to your follow-up and recommendations.
Hello,
We are a software and hardware development company for the forestry and environmental sectors. We have been based in Quebec (Canada) for over 30 years now. Our Canadian market covers Quebec, Ontario, and the Maritime provinces in the east. We are currently expanding across Canada and into the northern United States. We are on Android platforms with several map and data entry applications.
To ensure the success of our expansion, we aim to become part of the Apple family, which is why we are contacting you today.
We have developed our own GNSS receiver to increase the location accuracy of our users. This device is called GSFGPS. It uses Bluetooth BLE to communicate with mobile devices and a high-precision GPS that transmits its position using the NMEA protocol. We would like this device to be compatible with an iPhone/iPad. We have developed a mock location application in MAUI (multi-platform). Based on our interpretation of your documentation, we understand that the concept of mock location does not exist at Apple. How can we ensure that our Bluetooth GNSS device is compatible with your iPhone/iPad devices and that they can use the position of the Bluetooth device rather than the internal GPS of your devices?
We are a reseller for Juniper Systems, and we know that they have an app on the App Store that has the same features as our product.
https://junipersys.com/index.php/support/article/14709
We look forward to your follow-up and recommendations.
We are currently experiencing a very interesting issue when accessing the location in the background with CLLocationManager.
The user has given our app the "whenInUse" permission for locations and in most cases the app provides location updates even when it's in the background.
However, when we started to use other navigation apps in the foreground we saw that the func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) method was called with (kCLErrorDomain error 1.).
The user hasn't changed the location permission and we saw that locations were delivered once the user opened the app again.
I don't see anything in the documentation explaining this issue, but I chatted with other developers that confirm that specific behavior.
Am I missing something here?
Question: Does anyone have experience or documentation on how to get an App Clip to show on Apple Maps for a location?
What I've tried: I have tried to associate my App Clip with an Apple Maps location. We are working with a physical restaurant that has an Apple Maps location, our full app is listed there but not the App Clip.
I've gone through the steps of setting up the Advanced App Clip Experience and giving it the location we want it associated with, and have gone through Apple Business Connect and done all the setup there to get the full app to show with the location, but the app clip still does not show.
I've contacted Apple Support and they gave me the criteria of "The App Clip is hosted within the app" and "The app is associated to the same physical location". When asking for clarification with the first criteria they said they could help and closed the chat.
Topic:
App Store Distribution & Marketing
SubTopic:
General
Tags:
App Store
App Clips
Maps and Location
Trying to use new Swift @Observable to monitor GPS position within SwiftUI content view. But how do I tie the latest locations to the SwiftUI Map's mapCameraPosition?
Well ideally the answer could cover:
How to fix this error - So get map tracking along with the User Position, but also
How to include facility to turn on/off the map moving to track the user position (which I'll need to do next). So could be tracking, then disable, move map around and have a look at things, then click button to start syncing the mapcameraposition to the GPS location again
Refer to error I'm embedded in the code below.
import SwiftUI
import MapKit
@Observable
final class NewLocationManager : NSObject, CLLocationManagerDelegate {
var location: CLLocation? = nil
private let locationManager = CLLocationManager()
func startCurrentLocationUpdates() async throws {
if locationManager.authorizationStatus == .notDetermined {
locationManager.requestWhenInUseAuthorization()
}
for try await locationUpdate in CLLocationUpdate.liveUpdates() {
guard let location = locationUpdate.location else { return }
self.location = location
}
}
}
struct ContentView: View {
var newlocationManager = NewLocationManager()
@State private var cameraPosition: MapCameraPosition = .region(MKCoordinateRegion(
center: newlocationManager.location?.coordinate ?? <#default value#>,
span: MKCoordinateSpan(latitudeDelta: 0.25, longitudeDelta: 0.25)
))
// GET ERROR: Cannot use instance member 'newlocationManager' within property initializer; property initializers run before 'self' is available
var body: some View {
ZStack {
Map(position: $cameraPosition)
Text("New location manager: \(newlocationManager.location?.description ?? "NIL" )") // works
}
.task {
try? await newlocationManager.startCurrentLocationUpdates()
}
}
}
#Preview {
ContentView()
}
Hello everyone,
I'm working on a SwiftUI app that requires location services, and I've implemented a LocationManager class to handle location updates and permissions. However, I'm facing an issue where the location permission popup does not appear when the app is launched.
Here is my current implementation:
LocationManager.swift:
import CoreLocation
import SwiftUI
class LocationManager: NSObject, ObservableObject, CLLocationManagerDelegate {
private let locationManager = CLLocationManager()
@Published var userLocation: CLLocation?
@Published var isAuthorized = false
@Published var authorizationStatus: CLAuthorizationStatus = .notDetermined
override init() {
super.init()
locationManager.delegate = self
checkAuthorizationStatus()
}
func startLocationUpdates() {
locationManager.startUpdatingLocation()
}
func stopLocationUpdates() {
locationManager.stopUpdatingLocation()
}
func requestLocationAuthorization() {
print("Requesting location authorization")
DispatchQueue.main.async {
self.locationManager.requestWhenInUseAuthorization()
}
}
private func checkAuthorizationStatus() {
print("Checking authorization status")
authorizationStatus = locationManager.authorizationStatus
print("Initial authorization status: \(authorizationStatus.rawValue)")
handleAuthorizationStatus(authorizationStatus)
}
func locationManagerDidChangeAuthorization(_ manager: CLLocationManager) {
print("Authorization status changed")
authorizationStatus = manager.authorizationStatus
print("New authorization status: \(authorizationStatus.rawValue)")
handleAuthorizationStatus(authorizationStatus)
}
private func handleAuthorizationStatus(_ status: CLAuthorizationStatus) {
switch status {
case .authorizedAlways, .authorizedWhenInUse:
DispatchQueue.main.async {
self.isAuthorized = true
self.startLocationUpdates()
}
case .notDetermined:
requestLocationAuthorization()
case .denied, .restricted:
DispatchQueue.main.async {
self.isAuthorized = false
self.stopLocationUpdates()
print("Location access denied or restricted")
}
@unknown default:
DispatchQueue.main.async {
self.isAuthorized = false
self.stopLocationUpdates()
}
}
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
DispatchQueue.main.async {
self.userLocation = locations.last
}
}
func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) {
print("Location manager error: \(error.localizedDescription)")
}
}
MapzinApp.swift:
@main
struct MapzinApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
@StateObject private var locationManager = LocationManager()
var body: some Scene {
WindowGroup {
Group {
if locationManager.authorizationStatus == .notDetermined {
Text("Determining location authorization status...")
} else if locationManager.isAuthorized {
CoordinatorView()
.environmentObject(locationManager)
} else {
Text("Location access is required to use this app. Please enable it in Settings.")
}
}
}
}
}
Log input:
Checking authorization status
Initial authorization status: 0
Requesting location authorization
Authorization status changed
New authorization status: 0
Requesting location authorization
Despite calling requestWhenInUseAuthorization() when the authorization status is .notDetermined, the permission popup never appears. Here are the specific steps I have taken:
Checked the Info.plist to ensure the necessary keys for location usage are present:
NSLocationWhenInUseUsageDescription
NSLocationAlwaysUsageDescription
NSLocationAlwaysAndWhenInUseUsageDescription
Verified that the app's target settings include location services capabilities.
Tested on a real device to ensure it's not a simulator issue.
I'm not sure what I might be missing. Any advice or suggestions to resolve this issue would be greatly appreciated. Thank you!
We have to draw polygons inside a MKMapView based on coordinates retrieved from external source.
It seems that MapKit does not behave correctly where polygons have single-vertex self-intersection.
Here it's a simple point list example (every element is a pair of latitude and longitude values):
[(0, 0), (20, 0), (10, 10), (20, 20), (0, 20), (10, 10), (0, 0)]
The next image shows the rendering issue.
But if the list is slightly changed in this way
[(0, 0), (20, 0), (10, 10), (20, 20), (0, 20), (15, 10), (0, 0)]
the issue disappears. The next image shows it.
So it's not a self-intersection and self-tangency problem, but we think single-vertex self-intersection is a buggy edge case for MapKit.
Right now we fixed this problem by finding the duplicated coordinates and applying a small offset (1e-8) to one of them, but it's a temporary solution and adds rendering delay.
The problem is not due to iOS versions, since iOS 17 and 18 have the same issue. Also it happens on simulators and real devices.
Here is the playground example, based mostly on the "Map Playground" template Xcode offers. If you run it without modifying it, the playground shows the "bugged" polygon. If you use notBugPoints instead of the default bugPoints for the polygon, the playground shows the "not-bugged" polygon.
import MapKit
import PlaygroundSupport
// Create an MKMapViewDelegate to provide a renderer for our overlay
class MapViewDelegate: NSObject, MKMapViewDelegate {
func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
if let overlay = overlay as? MKPolygon {
let polygonRenderer = MKPolygonRenderer(overlay: overlay)
polygonRenderer.fillColor = .red
return polygonRenderer
}
return MKOverlayRenderer(overlay: overlay)
}
}
// Create a strong reference to a delegate
let delegate = MapViewDelegate()
// Create an MKMapView
let mapView = MKMapView(frame: CGRect(x: 0, y: 0, width: 800, height: 800))
mapView.delegate = delegate
// Configure The Map elevation and emphasis style
let configuration = MKStandardMapConfiguration(elevationStyle: .realistic, emphasisStyle: .default)
mapView.preferredConfiguration = configuration
// Create an overlay
let bugPoints = [
MKMapPoint(CLLocationCoordinate2DMake(0, 0)),
MKMapPoint(CLLocationCoordinate2DMake(20, 0)),
MKMapPoint(CLLocationCoordinate2DMake(10, 10)),
MKMapPoint(CLLocationCoordinate2DMake(20, 20)),
MKMapPoint(CLLocationCoordinate2DMake(0, 20)),
MKMapPoint(CLLocationCoordinate2DMake(10, 10)),
MKMapPoint(CLLocationCoordinate2DMake(0, 0))
]
let notBugPoints = [
MKMapPoint(CLLocationCoordinate2DMake(0, 0)),
MKMapPoint(CLLocationCoordinate2DMake(20, 0)),
MKMapPoint(CLLocationCoordinate2DMake(10, 10)),
MKMapPoint(CLLocationCoordinate2DMake(20, 20)),
MKMapPoint(CLLocationCoordinate2DMake(0, 20)),
MKMapPoint(CLLocationCoordinate2DMake(15, 10)),
MKMapPoint(CLLocationCoordinate2DMake(0, 0))
]
let polygon = MKPolygon(points: bugPoints, count: notBugPoints.count)
mapView.addOverlay(polygon)
// Frame our annotation and overlay
mapView.camera = MKMapCamera(lookingAtCenter: CLLocationCoordinate2DMake(10, 10), fromDistance: 5000000, pitch: 0, heading: 0)
// Add the created mapView to our Playground Live View
PlaygroundPage.current.liveView = mapView
I encountered a crash in iOS 17 related to CLBackgroundActivitySession, which appears to be due to misleading guidance in an Apple’s WWDC video.
Crash sample code: https://github.com/steve-ham/AppleLocationCrash
Simplified Reproduction Steps:
1. Open the GitHub sample app.
2. Archive and export (Distribute App -> Custom -> (Release Testing, Enterprise, or Debugging) -> Export).
3. Open the app.
4. Tap enableBackgroundLocation -> select Allow While Using App on the system popup.
5. Tap disableBackgroundLocation.
6. Go to the iOS home screen.
7. Wait for 10 seconds.
8. Reopen the app -> crash occurs.
The crash happens because setting CLBackgroundActivitySession to nil does not end the session, despite Apple’s guidance suggesting it should. Below is the exact quote from WWDC 2023, which explicitly states that both calling invalidate() or letting the object get destroyed (i.e., setting to nil) would end the session:
WWDC 2023 Discover Streamlined Location Updates (https://developer.apple.com/videos/play/wwdc2023/10180/)
“Before starting the updates, you should instantiate a CLBackgroundActivitySession object to start a new session. Note, we are assigning the session to self.backgroundActivity, which is a property and not to a local variable. And this is important because if we used a local variable, then when it goes out of scope, the object it holds would be deallocated, invalidating the session and potentially ending your app’s access to location. Then when we want to end our session, we can do that by sending the invalidate message or by letting the object be destroyed.”
I’ve submitted this to Apple for resolution but wanted to share this with the community. This misguidance has caused issues in my app’s release. If Apple could reply to confirm or provide clarification, it would be greatly appreciated.
P.S. Even a minimal implementation in viewDidLoad triggers the crash:
let session = CLBackgroundActivitySession()
print("session (session)")
Topic:
App & System Services
SubTopic:
Maps & Location
Tags:
Feedback Assistant
Debugging
Core Location
Maps and Location