Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ZXing与谷歌Play服务愿景_Android_Google Play Services_Qr Code_Zxing - Fatal编程技术网

Android ZXing与谷歌Play服务愿景

Android ZXing与谷歌Play服务愿景,android,google-play-services,qr-code,zxing,Android,Google Play Services,Qr Code,Zxing,我需要添加一个功能来捕获我的应用程序中的二维码。我使用过谷歌Play服务,我可以阅读二维码,但我有一些问题: 它是否与所有设备兼容?我可以使用barcodeDetector.isOperational()检查它是否兼容,但这不是我的选择。我需要确保它能在所有设备上工作 我可以从Play Store中获得一些条形码阅读器,显示相机使用所有设备表面,但背景较暗。在中间,一个较轻的窗户被一个框架包围着。那扇窗户能敏感地阅读代码,而不是表面上的任何地方。在Google Play服务中有可能做到这一点吗

我需要添加一个功能来捕获我的应用程序中的二维码。我使用过谷歌Play服务,我可以阅读二维码,但我有一些问题:

  • 它是否与所有设备兼容?我可以使用
    barcodeDetector.isOperational()
    检查它是否兼容,但这不是我的选择。我需要确保它能在所有设备上工作
  • 我可以从Play Store中获得一些条形码阅读器,显示相机使用所有设备表面,但背景较暗。在中间,一个较轻的窗户被一个框架包围着。那扇窗户能敏感地阅读代码,而不是表面上的任何地方。在Google Play服务中有可能做到这一点吗?ZXING似乎可以做到这一点,如URL所示:

问候

  • 如果安卓设备不安装Play服务(例如,一些华为设备),谷歌Play服务愿景将无法实现。ZXing是独立的条形码扫描库,您可以运行所有设备。但是,根据我的实验,谷歌视觉比ZXing(检测速度更快,在模糊代码方面表现更好)要好
  • Google Vision和ZXing都能检测整个表面,这个演示可能会有所帮助
    https://github.com/googlesamples/android-vision
  • 第一个问题:

    它是否与所有设备兼容

    如果你想集成到你的应用程序中

    “ML Kit使用
    com.google.android.gms
    名称空间作为 依赖Google Play服务。”

    但由于某些手机或其他设备未安装GMS,如果您希望应用程序在所有设备上运行,请集成。扫描工具包可以集成到Android和iOS系统中

    Zxing是一个通用的开源SDK。但是,它仅实现二维码扫描的基本操作,不支持强光、弯曲和变形等更复杂的扫描环境。目前,主流做法是基于Zxing优化源代码。请参阅本xda文章:

  • 扫描套件的EMUI版本相关功能
    • 所需EMUI版本(华为/荣誉手机和平板电脑):EMUI 3.0或更高版本
    • 所需安卓版本(非华为手机):安卓4.4或更高版本
  • 扫描套件提供。您可以根据需要选择SDK
  • 扫描工具包SDK Plus

    • 识别能力-华为手机:卓越(使用HMS核心(APK)中的增强识别模型)
    • 识别能力-非华为手机:卓越(使用SDK提供的增强识别模型)
    • SDK大小:≈3.3MB
    • 适用于:对SDK大小不敏感并希望在所有设备型号上获得最佳体验的开发人员
    扫描工具包SDK

    • 识别能力-华为手机:卓越(使用HMS核心(APK)中的增强识别模型)
    • 识别能力-非华为手机:良好(使用SDK提供的通用识别模型)
    • SDK大小:≈0.8MB
    • 适用于:对SDK大小敏感的开发人员
    第二个问题:

    关于扫描用户界面

    ,您可以根据需要从中进行选择。默认视图的扫描界面由扫描工具包提供。自定义视图模式、位图模式和多处理机模式的扫描界面由用户自定义

    如果您想在应用程序中快速构建强大的条形码扫描功能,建议使用默认视图或自定义视图。无论哪种方式,扫描套件都直接控制相机,以最大限度地发挥变焦控制、自动曝光和自动对焦等功能。需要更少的工作负载,但扫描体验显著改善。自定义视图与默认视图的不同之处在于,您可以自定义扫描UI


    请参阅此演示:

    使用Firebase中提供的ML工具包。Google vision已被弃用,不再受支持&是的,您可以创建一个边界框,以便只扫描特定区域而不是整个曲面。我花了很多时间试图了解ML工具包,但没有关于它的好教程。最近的一个是。读完后,我意识到这并不像谷歌视觉那么简单。当使用ML Kit时,我应该首先捕获图像,然后使用ML Kit进行处理。我说的对吗?看起来很酷,但你似乎需要注册成为华为的开发者。