Browse Source

fix: 修复两个扫码头不能同时连接的问题

huwanxiao 1 year ago
parent
commit
a3d59ecaed
1 changed files with 8 additions and 3 deletions
  1. 8 3
      app/src/main/java/com/naz/sdkdemo/MainActivity.java

+ 8 - 3
app/src/main/java/com/naz/sdkdemo/MainActivity.java

@@ -519,9 +519,10 @@ public class MainActivity extends BaseActivity {
         @JavascriptInterface
         public void disConnectPortAll() {
             Log.e(TAG, "disConnectPortAll");
-            for (SerialPortManager port:mPortList) {
-                port.close();
-            }
+            mPortList.clear();
+//            for (SerialPortManager port:mPortList) {
+//                port.close();
+//            }
         }
     }
 
@@ -1365,6 +1366,7 @@ public class MainActivity extends BaseActivity {
 
     private List<SerialPortManager> mPortList = new ArrayList<>();
     private void toConnectPort(String name){
+        Log.i("===","------->toConnectPort name="+name);
         if (mPortList.size()==0){
             SerialPortManager serialPortManager = new SerialPortManager();
             serialPortManager.init(MainActivity.this, name, 9600, new SerialPortManager.SerialCallBack() {
@@ -1381,6 +1383,7 @@ public class MainActivity extends BaseActivity {
                         @Override
                         public void run() {
                             mWebView.loadUrl("javascript:responsePortCode('"+name+","+code+"')");
+                            Log.e("===","------->toConnectPort code="+code);
                             if (code == 1){
                                 mPortList.add(serialPortManager);
                             }else {
@@ -1396,6 +1399,7 @@ public class MainActivity extends BaseActivity {
                 }
             });
         }else {
+            Log.i("===","------->toConnectPort else="+name);
             for (SerialPortManager port:mPortList) {
                 if (port.serialHelper.getPort().equals(name)){
                     port.open();
@@ -1433,6 +1437,7 @@ public class MainActivity extends BaseActivity {
 
             }
         }
+        Log.i("===","------->toConnectPort end="+name);
     }
 
     @Override