Platform Capabilities
Hybrid clients target Android, iOS, Windows and macOS through Mac Catalyst. The Wisej UI runs in the client's WebView; device operations use native handlers. A shared API or a successful build does not establish that every operation works on every target.
Start with Getting Started, then choose Local or Remote hosting. Both modes depend on the same native client for device access.
Check capabilities on the device
Check Device.Valid before using Hybrid integrations in an application that can also run in a browser. Use each module's availability properties, request its permissions, and handle failure and user cancellation. Hardware, OS version, entitlements and installed apps can change the result.
| Operation | Reference | Setup or example |
|---|---|---|
| Media capture | DeviceMedia | Camera permission and a device with a camera |
| Email composition | DeviceEmail | |
| External app launching | DeviceLauncher | Launch External Apps |
| Haptics and vibration | DeviceHapticFeedback, DeviceVibration | Haptic Feedback, Vibration |
| Local notifications | DeviceLocalNotification | Notifications |
| Device permissions | DevicePermissions | Configure the native client's manifest or Info.plist |
Extension source status
The following reconciles the 4.1 source as of 16 October 2026, rather than promising behavior in every published package. The comparison used core revision f495f5012da8059328b645c08cffed2644fd887d and extension revision 45bcc5d7337db2865e4df963a1e33cd4eba145bd. Authentication, Bluetooth, CameraPreview, DocumentScanner, MLKit, Mesa, Notifications and USB were inspected. Full runtime coverage across all eight modules and all four platforms has not been established. See Release Notes for published packages and the separate work in progress.
| Module | Android | iOS | Windows | macOS / Mac Catalyst |
|---|---|---|---|---|
| Authentication | Implementation present | Implementation present | Implementation present | Implementation present |
| Bluetooth | Native implementation present | Native implementation present | Native implementation present | Native implementation present |
| USB | Scaffold | Scaffold | Scaffold | Scaffold |
| CameraPreview | Implementation present | Implementation present | No implementation | No implementation |
| DocumentScanner capture | Implementation present | Implementation present | No implementation | Unsupported |
| DocumentScanner OCR | Unsupported | Implementation present | No implementation | Implementation present |
| MLKit modal barcode scanner | Implementation present | Implementation present | Implementation present | Implementation present |
| Mesa | Vendor hardware integration | Unsupported | Unsupported | Unsupported |
| Notifications | Registration, payload and callback source present; provider/device validation pending | Registration, payload and callback source present; provider/device validation pending | WNS registration and scheduling source present; receive handler remains empty | Apple registration, payload and callback source present; provider/device validation pending |
Implementation present means source exists for the operation; it does not mean it passed device tests or is included in a released package. Partial, Stub and Scaffold describe incomplete work. Bluetooth and USB are now included in the root extension solution. Bluetooth delegates to native runtime clients on Android, Apple and Windows; USB still contains scaffold classes. Solution inclusion or compilation does not validate hardware behavior. Desktop MLKit excludes the live OCR and embedded scanner controls; its modal barcode scanner is a separate capability. Mesa requires supported Android vendor hardware.
These findings supersede the September 30 Bluetooth stubs, solution omissions and blanket notification payload-gap descriptions. The source snapshots and core runtime require private maintainer access. They do not establish a public package release or close the open platform-validation issues.
For biometric setup, package pairing and registration, see Hybrid Extensions. For document capture versus OCR, see Document Scanner. Remote Push Notifications remains work in progress.
Apple and Windows development
iOS and Mac Catalyst builds require a Mac, a compatible Xcode installation, the matching .NET SDK and MAUI workloads, and signing configuration for the intended device or distribution method. See macOS Desktop Development and the sample repository setup.
Windows uses WebView2. Validate the application on its intended Windows version, including native permissions, notification behavior and media hardware. Desktop support in the core runtime does not add a desktop handler to an extension that only implements mobile platforms.