iOSLocation
From Xojo Documentation
Class (inherits from Object)
This class is supported on Mobile (iOS). Use #If...#Endif with the Target... constants to ensure you only use this class where it is supported. |
New in 2016r2
An iOSLocation allows the user to request location coordinates and updates from the device.
Events | ||
|
Properties | ||||
|
Methods | ||
|
Enumerations | ||
|
Notes
Use the Debug ↠ Location menu in the iOS Simulator to provide fake locations for testing.
Initial Setup
In the Open event handler of the view, you will need to initialize the location like this:
If MyLocation.AuthorizationState = iOSLocation.AuthorizationStates.AuthorizedWhenInUse Then
' we've got our requested authorization state, start getting LocationChanged events
MyLocation.Enabled = True
Else
' we don't have authorization yet, so ask for it
MyLocation.RequestInUseAuthorization
End If
' we've got our requested authorization state, start getting LocationChanged events
MyLocation.Enabled = True
Else
' we don't have authorization yet, so ask for it
MyLocation.RequestInUseAuthorization
End If
Sample plist
In addition to requesting authorization, you'll also need to provide a plist file specifying the message to display when authorization is requested. An example plist is below. Save it to a file called iOSLocation.plist and drag it into your iOS project to automatically include it with the app:
<?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>This app needs access to your location while running.</string> </dict> </plist>
See Also
[CLLocationManager https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocationManager_Class/]