Android
Чтение штрих-кода и QR-кода
Поиск…
замечания
Использование QRCodeReaderView (на основе Zxing)
QRCodeReaderView реализует представление Android, которое показывает камеру и уведомляет, когда в предварительном просмотре есть код QR.
В нем используется zxing с открытым исходным кодом, многоформатная библиотека обработки изображений штрих-кода 1D / 2D.
Добавление библиотеки в ваш проект
Добавьте зависимость QRCodeReaderView к вашему build.gradle
dependencies{
compile 'com.dlazaro66.qrcodereaderview:qrcodereaderview:2.0.0'
}
Первое использование
- Добавьте в свой макет
QRCodeReaderView
<com.dlazaro66.qrcodereaderview.QRCodeReaderView
android:id="@+id/qrdecoderview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
- Создайте действие, которое реализует
onQRCodeReadListener
, и используйте его как слушательQrCodeReaderView
. - Убедитесь, что у вас есть разрешения камеры, чтобы использовать библиотеку. ( https://developer.android.com/training/permissions/requesting.html)
Затем в своей деятельности вы можете использовать его следующим образом:
public class DecoderActivity extends Activity implements OnQRCodeReadListener {
private TextView resultTextView;
private QRCodeReaderView qrCodeReaderView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_decoder);
qrCodeReaderView = (QRCodeReaderView) findViewById(R.id.qrdecoderview);
qrCodeReaderView.setOnQRCodeReadListener(this);
// Use this function to enable/disable decoding
qrCodeReaderView.setQRDecodingEnabled(true);
// Use this function to change the autofocus interval (default is 5 secs)
qrCodeReaderView.setAutofocusInterval(2000L);
// Use this function to enable/disable Torch
qrCodeReaderView.setTorchEnabled(true);
// Use this function to set front camera preview
qrCodeReaderView.setFrontCamera();
// Use this function to set back camera preview
qrCodeReaderView.setBackCamera();
}
// Called when a QR is decoded
// "text" : the text encoded in QR
// "points" : points where QR control points are placed in View
@Override
public void onQRCodeRead(String text, PointF[] points) {
resultTextView.setText(text);
}
@Override
protected void onResume() {
super.onResume();
qrCodeReaderView.startCamera();
}
@Override
protected void onPause() {
super.onPause();
qrCodeReaderView.stopCamera();
}
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow