CheapBarcodes.Scanning
1.0.0
See the version list below for details.
dotnet add package CheapBarcodes.Scanning --version 1.0.0
NuGet\Install-Package CheapBarcodes.Scanning -Version 1.0.0
<PackageReference Include="CheapBarcodes.Scanning" Version="1.0.0" />
<PackageVersion Include="CheapBarcodes.Scanning" Version="1.0.0" />
<PackageReference Include="CheapBarcodes.Scanning" />
paket add CheapBarcodes.Scanning --version 1.0.0
#r "nuget: CheapBarcodes.Scanning, 1.0.0"
#:package CheapBarcodes.Scanning@1.0.0
#addin nuget:?package=CheapBarcodes.Scanning&version=1.0.0
#tool nuget:?package=CheapBarcodes.Scanning&version=1.0.0
CheapBarcodes.Scanning
RT150 handheld barcode scanner integration for Android, UI-agnostic. Wraps the CN.Pda serial-port SDK (via CheapBarcodes.Binding) plus the vendor broadcast fallback behind two small types:
IHardwareScannerService/AndroidHardwareScannerService— scan event stream with beep + vibration feedback (NullHardwareScannerServicefor non-Android targets).Rt150ScannerHost— activity-lifecycle host for the scan thread and receivers.
Usage
Register the service (MAUI shown; any Android DI works):
#if ANDROID
builder.Services.AddSingleton<IHardwareScannerService, AndroidHardwareScannerService>();
#else
builder.Services.AddSingleton<IHardwareScannerService, NullHardwareScannerService>();
#endif
Wire the host into your MainActivity:
private Rt150ScannerHost _scannerHost;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
_scannerHost = new Rt150ScannerHost(this);
_scannerHost.BarcodeScanned += barcode =>
{
var scannerService = /* resolve IHardwareScannerService */;
scannerService?.OnScan(barcode);
};
}
protected override void OnStart() { base.OnStart(); _scannerHost.Start(); }
protected override void OnResume() { base.OnResume(); _scannerHost.Start(); }
protected override void OnPause() { UnhookIfNeeded(); _scannerHost.Stop(); base.OnPause(); }
protected override void OnDestroy() { _scannerHost.Dispose(); base.OnDestroy(); }
Then consume scans anywhere via IHardwareScannerService.HardwareBarcodeScanned.
The RT150's native libraries (libdevapi.so, libirdaSerialPort.so, armeabi-v7a) and scan.jar ship via the CheapBarcodes.Binding dependency — no manual jniLibs setup needed.
See the CheapBarcodes demo app for a working MAUI Blazor frontend.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net11.0 is compatible. net11.0-android37.0 is compatible. |
-
net11.0
- No dependencies.
-
net11.0-android37.0
- CheapBarcodes.Binding (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.