Browse Source

fix 53.1 add listener for qrscan

dev
MTing 4 days ago
parent
commit
063422853e
  1. 9
      app/src/main/java/com/ouxuan/oxface/DebugActivity.java
  2. 23
      lib-serialport/src/main/java/com/kongqw/serialportlibrary/SerialPortManager.java

9
app/src/main/java/com/ouxuan/oxface/DebugActivity.java

@ -35,7 +35,7 @@ import com.ouxuan.oxface.utils.VenueSceneUtils;
import java.io.File; import java.io.File;
import java.util.Date; import java.util.Date;
public class DebugActivity extends Activity {
public class DebugActivity extends Activity implements com.kongqw.serialportlibrary.SerialPortManager.OnQrDataListener {
private static final String TAG = "DebugActivity"; private static final String TAG = "DebugActivity";
private TextView tvLogOutput; private TextView tvLogOutput;
@ -1044,6 +1044,7 @@ public class DebugActivity extends Activity {
logMessage("启动扫码器测试..."); logMessage("启动扫码器测试...");
try { try {
com.kongqw.serialportlibrary.SerialPortManager serialPortManager = new com.kongqw.serialportlibrary.SerialPortManager(); com.kongqw.serialportlibrary.SerialPortManager serialPortManager = new com.kongqw.serialportlibrary.SerialPortManager();
serialPortManager.setOnQrDataListener(this);
serialPortManager.x9_serialport_qr(); serialPortManager.x9_serialport_qr();
logMessage("扫码器测试已启动,请扫描二维码,数据将输出到日志"); logMessage("扫码器测试已启动,请扫描二维码,数据将输出到日志");
showToast("扫码器测试已启动"); showToast("扫码器测试已启动");
@ -1053,4 +1054,10 @@ public class DebugActivity extends Activity {
showToast("启动扫码器测试失败"); showToast("启动扫码器测试失败");
} }
} }
@Override
public void onQrDataReceived(String qrData) {
logMessage("扫码器接收到数据: " + qrData);
Log.d(TAG, "QR Data received: " + qrData);
}
} }

23
lib-serialport/src/main/java/com/kongqw/serialportlibrary/SerialPortManager.java

@ -34,6 +34,7 @@ public class SerialPortManager extends SerialPort {
private SerialPortManager serialPortQr; private SerialPortManager serialPortQr;
private boolean isQrRuning = false; private boolean isQrRuning = false;
private Thread qrThread; private Thread qrThread;
private OnQrDataListener mOnQrDataListener;
/** /**
* 打开串口 * 打开串口
@ -234,6 +235,10 @@ public class SerialPortManager extends SerialPort {
if (size > 0) { if (size > 0) {
final String qr = new String(buffer); final String qr = new String(buffer);
Log.d(TAG, "qr data:" + qr); Log.d(TAG, "qr data:" + qr);
// 调用回调接口
if (mOnQrDataListener != null) {
mOnQrDataListener.onQrDataReceived(qr);
}
} }
} }
} }
@ -262,4 +267,22 @@ public class SerialPortManager extends SerialPort {
e.printStackTrace(); e.printStackTrace();
} }
} }
/**
* 设置QR数据监听器
*
* @param listener QR数据监听器
* @return SerialPortManager
*/
public SerialPortManager setOnQrDataListener(OnQrDataListener listener) {
mOnQrDataListener = listener;
return this;
}
/**
* QR数据监听器接口
*/
public interface OnQrDataListener {
void onQrDataReceived(String qrData);
}
} }
Loading…
Cancel
Save