First Question:
Is it compatible with all devices?
If you want to integrate Google ML Kit Barcode scanning into your app,
“ML Kit uses the com.google.android.gms
namespace for libraries that
depend on Google Play Services.”
But as some phones or other devices are without GMS installed, if you want your app to run on all devices, integrate Huawei Mobile Services (HMS). Scan Kit can be integrated into both Android and iOS systems.
Zxing is a common open-source SDK. However, it only implements basic operations of scanning the QR code and does not support more complex scanning environments such as strong light, bending, and deformation. Currently, the mainstream practice is to optimize the source code based on Zxing. Please kindly refer to this xda article: Comparison between Huawei Scan Kit and Zxing
- EMUI Version-Dependent Features of Scan Kit
- Required EMUI Version (HUAWEI/HONOR Phones and Tablets): EMUI 3.0 or later
- Required Android Version (Non-Huawei Phones): Android 4.4 or later
- Scan Kit provides two SDKs. You can select an SDK as required.
Scan Kit SDK-Plus
- Recognition capability - Huawei phone:Excellent (using the enhanced recognition model in HMS Core (APK))
- Recognition capability - Non-Huawei phone:Excellent (using the enhanced recognition model provided by the SDK)
- SDK Size:≈3.3MB
- Applicable to: Developers who are insensitive to the SDK size and want to have the best experience on all device models
Scan Kit SDK
- Recognition capability - Huawei phone:Excellent (using the enhanced recognition model in HMS Core (APK))
- Recognition capability - Non-Huawei phone:Good (using the common recognition model provided by the SDK)
- SDK Size:≈0.8MB
- Applicable to: Developers who are sensitive to the SDK size
Second question:
About Scanning UI
Scan Kit can be called in four ways, from which you can choose as needed. The Scanning UI of Default View is Provided by Scan Kit. The Scanning UI of Customized View Mode,Bitmap Mode and MultiProcessor Mode are Customized by yourself.
If you want to quickly build powerful barcode scanning capabilities into your app, Default View or Customized View is recommended. In either way, Scan Kit directly controls the camera to maximize capabilities such as zoom control, automatic exposure, and auto focus. Less workload is required, but scanning experience is dramatically improved. Customized View differs from Default View in that you can customize the scanning UI.
Please refer to this demo: https://github.com/HMS-Core/hms-scan-demo