Skip to main content

Overview

Hybrid extensions add native device integrations to the Device API. They contain a Wisej-facing assembly and a native client assembly. Browser controls documented in the separate Wisej.NET Extensions manual use a different integration model.

Before selecting an extension, check Platform Capabilities. Source code for a module does not mean every platform implements it. Consult Hybrid licensing for access and distribution terms.

Adding to a Project​

Install the Wisej-facing package in the local or remote Wisej application and its -Native partner in the MAUI client. Keep the core runtime and extension dependencies on the same release line. Register the extension in the client's startup builder after UseWisejHybrid, then configure its native permissions.

IntegrationWisej applicationNative clientPublished versions verified on 1 October 2026
Core HybridWisej-4-HybridWisej-4-Hybrid-Native4.1.4 and 4.0.14
Document ScannerWisej-4-Hybrid-DocumentScannerWisej-4-Hybrid-DocumentScanner-Native4.1.4 and 4.0.14
MLKitWisej-4-Hybrid-MLKitWisej-4-Hybrid-MLKit-Native4.1.4 and 4.0.14
AuthenticationWisej-4-Hybrid-AuthenticationWisej-4-Hybrid-Authentication-NativeStable 4.0.11; no published 4.1 pair

Use the existing Wisej-4-* IDs for both 4.0 and 4.1. Version selection changes the release line, not the package ID. Release Notes links the verified packages and separates the planned backport from shipped versions.

For a package-based 4.1 document scanner client:

dotnet add YourWisejApp.csproj package Wisej-4-Hybrid-DocumentScanner --version 4.1.4
dotnet add YourHybridClient.csproj package Wisej-4-Hybrid-DocumentScanner-Native --version 4.1.4

The project names are placeholders; run the commands against the corresponding projects in your solution. See the DocumentScanner example for the full startup and platform configuration.

For 3.5, use the existing Wisej-3-Hybrid / Wisej-3-Hybrid-Native IDs and corresponding Wisej-3-Hybrid-Authentication, -DocumentScanner and -MLKit pairs. Stable 3.5.39 packages are verified for all four pairs. The planned backports through the end of 2026 are separate from those releases; see Release Notes.

Authentication example​

4.1 source dependency

The Authentication example uses extension source project references because there is no published 4.1 Authentication package. Follow the example README for the private sibling checkout requirement. Do not assume the published 4.0.11 pair is a verified substitute in a 4.1 application.

Register Authentication in the MAUI client's Startup.cs:

using Wisej.Hybrid.Authentication.Native;
using Wisej.Hybrid.Native;

var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.UseWisejHybrid(config =>
{
config.StartupUrl = "https://your-server.example/";
})
.UseWisejAuthentication();

App is the generated client application type. Local applications also register their offline startup type as described in Local Application.

Call the Wisej-facing integration from a Wisej page or form:

using Wisej.Hybrid;
using Wisej.Hybrid.Authentication;

bool authenticated = Device.Use<DeviceAuthentication>()
.Authenticate("Authenticate", "Authenticate User");

On iOS, add an NSFaceIDUsageDescription explanation to Platforms/iOS/Info.plist when using Face ID. Configure other required platform permissions and test the intended hardware; a successful compile does not establish biometric availability.

Other modules​

The source tree also contains Bluetooth, CameraPreview, Mesa, Notifications and USB. Their implementation and platform coverage vary; the capability table describes the known gaps. There is no verified published Wisej-4-Hybrid-PushNotifications package. Keep the remote notification workflow marked as work in progress until registration, payload delivery and device behavior are validated.