2015-08-24 6 views
1

Я оцениваю образец Multi-Tracker, и я хочу получить RawValue детектора штрих-кода, если он доступен.Что нужно сохранить и вернуть RawValue из трекера?

Я хотел бы удалить Tracker после получения действительного RawValue и использовать его в другом месте.

Любые предложения по пунктам ниже будут полезны.

  1. Как уволить трекер когда обнаружение было сделано

  2. Как удержать и передать RawValue вверх по деятельности. Например, эхо его в Toast

Благодарности

ответ

1

Смотрите обсуждение в этой теме о прохождении RawValue к деятельности:

How to capture barcode values using the new Barcode API in Google Play Services?

трекер активен до тех пор, связанный с ним CameraSource/Detector активен (т. е. метод release() не был вызван). Но если вы хотите избежать получения обновлений за пределами первоначального обнаружения, вы могли бы отключить отправку трекеров за пределы первого. Например:

@Override 
public void onUpdate(Detector.Detections<Barcode> detectionResults, Barcode item) { 
    if (!mFoundCalled) { 
     mCallback.onFound(item.rawValue); 
     mFoundCalled = true; 
    } 
    ... 
} 
+0

Спасибо @ pm0733464. Я использовал интерфейс для переноса item.rawValue до основной Activity. – Jnkrw

0

И вы также можете использовать функцию обратного вызова в: onNewItem

@Override 
public void onNewItem(int id, Barcode item) { 
    mGraphic.setId(id); 
    callback.onBarcodeFound(item.rawValue); 
}