A cross-platform barcode scanning library for Xamarin and .NET mobile applications.
ZXing.Net.Mobile is a C#/.NET library that provides barcode scanning capabilities for cross-platform mobile applications built with Xamarin.iOS, Xamarin.Android, UWP, Tizen, and Xamarin.Mac. It is based on the open-source ZXing (Zebra Crossing) barcode library and abstracts platform complexities to offer a simple and painless integration process. The library solves the problem of adding barcode scanning functionality to mobile apps without requiring extensive platform-specific code.
C#/.NET developers building cross-platform mobile applications with Xamarin or UWP who need to integrate barcode scanning functionality. This includes developers targeting iOS, Android, Windows Universal, Tizen, or macOS platforms.
Developers choose ZXing.Net.Mobile for its straightforward API that allows scanning barcodes in as few as two lines of code, its cross-platform support across major mobile ecosystems, and its flexibility through reusable UI components and customizable overlays. It uniquely offers the option to leverage Apple's built-in AVCaptureSession engine on iOS for supported formats, providing a native performance alternative.
Barcode Scanner for Xamarin.iOS, Xamarin.Android, UWP and Tizen
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports Xamarin.iOS, Xamarin.Android, UWP, Tizen, and Xamarin.Mac (rendering), with detailed initialization code for each platform in the README.
Enables barcode scanning in as few as two lines of code, as demonstrated with `var result = await scanner.Scan()` in the usage example.
Provides reusable scanner components like UIView on iOS, Fragment on Android, and Control on UWP, allowing for custom app layouts.
Optionally uses Apple's AVCaptureSession engine on iOS for supported formats like QR and EAN13, offering better performance on compatible devices.
Requires separate initialization calls for each platform (e.g., `Platform.Init()` in Android, iOS, UWP), adding boilerplate code and complexity.
Xamarin.Mac only supports barcode rendering, not scanning, which restricts its utility for full-featured macOS applications.
Creating custom overlays demands platform-specific UI components (UIView, View, UIElement), increasing development time compared to pre-styled solutions.