Custom Container Features
Version compatibility
Custom container-level features were introduced in version 22.9.1 of the JourneyApps Container.
Custom usage descriptions were introduced in version 22.10.2 of the JourneyApps Container for iOS.
Introduction
It is possible to enable only specific container-level features when creating a custom-branded container. Excluding features from the container if they are not used by the app has the following benefits:
App users will not receive unnecessary permissions requests. Certain container-level features require permission from the user to access their device. For example, when a user wants to take a photo in the app for the first time, they are prompted to allow access to the device's camera. By only including the features that are used in your app, users will only receive relevant permissions requests.
Reduced chance that a container is rejected by the App Store. Containers could get rejected by the App Store if a container-level feature is enabled, but not used in an app.
The table below details all customizable container features per platform.
Custom usage descriptions (iOS only)
Limitations
Custom usage descriptions are currently only available in English.
For certain permission prompts it is possible to add customized usage descriptions to more accurately describe how a feature is being used in an app. See the example below of a default usage description that can be customized:
The "Custom usage description" column in the table below shows which container features support custom descriptions, and what the default description is.
Customizable container features
Container feature | Platforms | Custom usage description |
---|---|---|
Audio Recording: Access device microphone for audio recording. | Android, iOS | Supported. Default: This app needs microphone access |
Background Location Tracking: Track device location while app is in the background. | Android, iOS | Supported. Default: Your location will be used to assist with your current workflow. This includes capturing your location, displaying it on a map or tracking it as part of a route. If you only allow access while you are using the app, some features will not work accurately while this app is in the background. |
Barcode Scanning: Scanning of barcodes and QR codes. | Android, iOS | Supported, as part of camera permissions which includes taking photos and scanning barcodes. Default: This app needs access to the camera to take photos and scan barcodes. |
Bluetooth: Bluetooth low energy support. Only available for Enterprise clients. | Android, iOS Note: Apple AppStore submissions require the feature to be used if included. | Supported. Default: This app needs bluetooth access |
Components: Enables certain native UI components, e.g. date picking. | Android, iOS, Windows | |
Enrollment: Enables enrolling into a base JourneyApps runtime environment. | Android, iOS, Windows Note: For iOS, this feature also requires the Push Notifications bundle ID capability. | Supported, as part of camera permissions which includes taking photos and scanning barcodes. Default: This app needs access to the camera to take photos and scan barcodes. |
Inter-App Communication: Communicate with external services and apps, e.g. Android Intents. | Android | |
Internet Access: Make HTTP network requests. | Android, iOS, Windows | |
Location Services: Access device physical location. | Android, iOS, Windows | Supported. Default: Your location will be used to assist with your current workflow. This includes capturing your location, displaying it on a map or tracking it as part of a route. |
Media: Open URIs and files | Android, iOS, Windows | |
NFC: Near Field Communication support | Android, iOS Note: For iOS, this feature also requires the NFC Tag Reading bundle ID capability. | Supported. Default: This app needs to read and write NFC Tags |
Networking: Communicate via network sockets. | Android, iOS, Windows | |
Photos: Capture and select photos from device. | Android, iOS, Windows | Supported, as part of camera permissions which includes taking photos and scanning barcodes. Default: This app needs access to the camera to take photos and scan barcodes. |
Printing: Print documents, HTML and text. | Android, iOS, Windows | |
Push Notifications: Receive push notifications. | Android, iOS, Windows Note: For iOS, this feature also requires the Push Notifications bundle ID capability. | |
Sensors: Access to device sensors, e.g. Accelerometer. | Android, iOS, Windows | |
Serial Communication: Communicate via UART like protocols. | Android, iOS, Windows | |
Voice Commands: Application control via voice commands. | RealWear only |
How to enable/disable container features
See the following section:
Create and Manage App ContainersReview which features are enabled for a container
Enabled container-level features can be reviewed for a particular container in OXIDE as well as on a device.
OXIDE
Navigate to the container build, and click on a build's "Summary" button to view more information, including selected features.
On a device
Enabled features are listed in the Capabilities section on the Diagnostics page.
Last updated