The Capabilities tab of the Settings tool provides a series of switches to use in defining the functionality of your app. The functionality of these capabilities varies but should be enabled if your app uses the particular functionality.
Location
The Location capability controls access to the location on demand functionality of the device. This is enabled by default in all apps and if disabled, the app will crash when you attempt to check your location on iOS and Android. This capability has no effect on other platforms and does not affect other mapping functions.
High Accuracy Location
If High Accuracy Location is enabled, your app will be able to use external high-accuracy GPS devices to capture a more precise location than what is provided by the native positioning tools of the device. Be aware that this requires additional coding to locate and obtain a location from these external devices.
Bluetooth
The Bluetooth capability controls access to the Bluetooth sensors in the device, which connect to other devices such as high-accuracy positioning sensors.
Network
The Network capability controls access to the internet and network state of the app. This is enabled by default and if disabled, the app will crash when you attempt to access network functionality on iOS or Android. This capability has no effect on other platforms.
Beacon
The Beacon capability controls the app's ability to detect Bluetooth beacons. If this capability is enabled, then the Location, Background Location and Bluetooth capabilities will also be enabled, as these are required to make use of Bluetooth beacons.
External Storage
The External Storage capability controls access to files and folders outside of the app's data location.
File Sharing
On iOS, enabling external storage for your app also enables file sharing, which can cause rejection from the App Store if not justified. Disabling this capability disables file sharing on iOS; it has no effect on other operating systems.
Background Location
If the Location capability in the Background Modes section is enabled, your app will be able to capture the location of the device while the app is running in the background. This requires no further configuration or code; the same code to capture the location when the app is active will operate in the background.
To operate your app when running location data in the background, use the Qt.ApplicationState property to monitor the app's usage. The app should ideally be in the ApplicationHidden state when capturing location data in the background, but the operating system may terminate the app depending on resource usage.
Background Bluetooth Central
The Bluetooth Central capability in the Background Modes section controls whether the app can receive updates as a central device from Bluetooth LE peripheral devices when the app is running in the background. This capability only affects iOS and Android; it has no effect on other operating systems.
Biometric Authentication
If Biometric Authentication is enabled, your app will be able to authenticate a user through a fingerprint scan. This capability is currently only supported on iOS, macOS, and Windows platforms. For more information on implementing this functionality, see Authentication.
Audio
The Audio capability controls the app's ability to play audio from an internal file or online. If disabled, the app will be unable to play audio on iOS and Android, although the app behaves as expected otherwise. This capability has no effect on other platforms.
Camera
The Camera capability controls access to the device's camera. If disabled, the app will be unable to use the camera on iOS and Android, although the app behaves as expected otherwise. This capability has no effect on other platforms.
Microphone
The Microphone capability controls access to the device's microphone, typically used for recording audio, if Audio is also enabled in your app. If either of these functions is disabled, the app will be unable to access the microphone on iOS and Android. The app behaves as expected otherwise. This capability has no effect on other platforms.
Local Notifications
If enabled, the Local Notifications capability grants permission to schedule local notifications. This does not have an automatic effect, and notification scheduling will need to be added to your app. If this capability is not enabled, notifications from your app will not function. For more information on implementing notifications, see Notifications.
Vibration
The Vibration capability controls access to the vibration functionality of the device (if present in the device). This does not have an automatic effect, and vibration triggers will need to be added to your app. If this capability is not enabled, the vibration triggers in your app will not function. For more information on implementing vibration, see Notifications.