1

我正在评估 Multi-Tracker 样本,并且一旦有条码检测器可用,我想获取条码检测器的 RawValue。

一旦获得有效的 RawValue 并在其他地方使用该值,我想关闭 Tracker。

对以下项目的任何建议都会有所帮助。

  1. 检测到后如何关闭跟踪器

  2. 如何在活动中保持和传递 RawValue。例如,在 Toast 中回显它

谢谢

4

2 回答 2

1

请参阅此线程中有关将 RawValue 传递给活动的讨论:

如何使用 Google Play 服务中的新 Barcode API 捕获条形码值?

只要关联的 CameraSource/Detector 处于活动状态,跟踪器就处于活动状态(即,还没有调用 release() 方法)。但是,如果您想避免接收超出初始检测的更新,您可以让跟踪器抑制发送超出第一个更新的更新。例如:

@Override
public void onUpdate(Detector.Detections<Barcode> detectionResults, Barcode item) {
    if (!mFoundCalled) {
        mCallback.onFound(item.rawValue);
        mFoundCalled = true;
    }
    ...
}
于 2015-08-24T18:17:47.487 回答
0

您还可以在以下位置使用回调:onNewItem

@Override
public void onNewItem(int id, Barcode item) {
    mGraphic.setId(id);
    callback.onBarcodeFound(item.rawValue);
}
于 2015-10-02T22:01:26.943 回答