Requirements
Platform Requirements
iOS/iPadOS
The Aila SDK requires iOS/iPadOS 16.0 or greater.
Android
The Aila SDK supports Android 5.0 (API level 21) or greater.
Cordova Requirements
- Apache Cordova 9.0 or greater
- cordova-ios 6.0 or greater (for iOS platform)
- cordova-android 9.0 or greater (for Android platform)
Architecture Support
iOS
- Real Devices: armv7 and arm64 architectures
- iOS Simulator: i386 and x86_64 architectures for building; however, all function calls will not function and scanning will not occur, as the iOS Simulator has no access to a camera
Android
- arm64-v8a: 64-bit ARM architecture
- armeabi-v7a: 32-bit ARM architecture
- x86: Intel 32-bit architecture (emulator)
- x86_64: Intel 64-bit architecture (emulator)
Permissions
iOS Permissions
Due to privacy concerns, iOS/iPadOS regulates access to video and audio recording. Because Aila requires such access, the SDK initialization may cause the operating system to present the user with a permission request dialog. If the user denies permission, an error is reported and all Aila API calls will not function.
After permission is granted or denied, the operating system stores the user's decision, and dialogs will not be presented again. Changing the permissions requires manual intervention through system settings.
Add the following to your config.xml:
<platform name="ios">
<edit-config target="NSCameraUsageDescription" file="*-Info.plist" mode="merge">
<string>Camera access is required for barcode scanning</string>
</edit-config>
<edit-config target="NSMicrophoneUsageDescription" file="*-Info.plist" mode="merge">
<string>Microphone access is required for kiosk communication</string>
</edit-config>
</platform>
In addition, certain mobile device management (MDM) solutions can disable video and audio recording. Such MDM restrictions will prevent Aila from functioning.
Android Permissions
Add the following to your config.xml:
<platform name="android">
<config-file target="AndroidManifest.xml" parent="/*">
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:name="android.hardware.camera" android:required="true" />
<uses-feature android:name="android.hardware.camera.autofocus" />
</config-file>
</platform>
When deploying an application that uses the Aila SDK, care must be taken that camera and audio permissions are granted, and that MDM restrictions are not in effect.
Audio and Camera Control
During normal operation, the library requires exclusive control over audio playback and recording. The application must not play or record any sound, as this will interfere with kiosk communications. If the application must play audio through the device's built-in speaker, audio control can be temporarily obtained using speakerOn() and then released using speakerOff().
Similar restrictions apply to the device camera. See disableCamera() and enableCamera() for temporary camera access.
Standalone Usage Restriction
The Aila SDK is intended to be used with Aila hardware such as the Interactive Kiosk. For development and testing purposes only, a limit of 250 barcode scans may be performed when not connected to the kiosk. If this limit is exceeded, subsequent scans will return the string <UNLICENSED> and an error message will be emitted to the system log. Connecting to Aila hardware resets the limit. Standalone usage is only permitted in a development environment.
This restriction does not apply when licensed for Aila SoftScan.
To use the SDK without hardware limitations, contact Aila about a SoftScan license.