从不使用RedLaser的3.X SDK getBeepResource()。该应用程序可以很好地扫描条形码,但我也想发出蜂鸣声。
什么使哔哔声?我在BarcodeScanActivity类上看不到任何东西。
最佳答案
在3.0 RedLaser SDK中,我们删除了扫描条形码时SDK会发出声音的功能。相反,BarcodeScanActivity通过onScanStatusUpdate方法定期将其找到的条形码通知其具体子类。您可以在SDK文档中阅读有关此方法的信息。
您可以使用Android的MediaPlayer对象创建将播放声音文件的媒体播放器,并在找到新条形码时调用MediaPlayer.start()。
我们更改此工作方式的原因与“条形码错误”有关。这是您的应用程序在寻找特定类型条形码的地方,但用户却无法将手机拿到不同类型的条形码上,因为他们对此一无所知。使用3.0 SDK,您的应用程序可以将SDK配置为扫描所有受支持的条形码类型,如果用户尝试扫描“错误”类型,则可以轻柔地告诉他们,而无需离开扫描会话。您只需要评估输入的结果,而无需退出会话,直到看到“正确”的条形码类型。
该解决方案的副作用是,SDK不知道哪种条形码类型是“正确的”类型,哪些条形码类型是应用程序想要告知但实际上不会使用的类型。因此,每次发现条形码时让SDK发出蜂鸣声是没有意义的。仅当扫描“正确”类型的条形码并且只有应用程序知道该内容时,才发出哔声。