Przeglądaj źródła

贴标机=》扫码头

cqpCow 1 rok temu
rodzic
commit
74192b3055

+ 37 - 5
app/src/main/java/com/naz/sdkdemo/MainActivity.java

@@ -1207,11 +1207,7 @@ public class MainActivity extends BaseActivity {
 
     private List<SerialPortManager> mPortList = new ArrayList<>();
     private void toConnectPort(String name){
-        for (SerialPortManager port:mPortList) {
-            if (port.serialHelper.getPort().equals(name)){
-                port.open();
-                return;
-            }
+        if (mPortList.size()==0){
             SerialPortManager serialPortManager = new SerialPortManager();
             serialPortManager.init(MainActivity.this, name, 9600, new SerialPortManager.SerialCallBack() {
                 @Override
@@ -1241,7 +1237,43 @@ public class MainActivity extends BaseActivity {
 
                 }
             });
+        }else {
+            for (SerialPortManager port:mPortList) {
+                if (port.serialHelper.getPort().equals(name)){
+                    port.open();
+                    return;
+                }
+                SerialPortManager serialPortManager = new SerialPortManager();
+                serialPortManager.init(MainActivity.this, name, 9600, new SerialPortManager.SerialCallBack() {
+                    @Override
+                    public void dataCallBack(String data) {
+                        Log.e("--------->","------->data1="+data);
+                        mWebView.loadUrl("javascript:responsePortData('"+data+"')");
+                    }
+
+                    @Override
+                    public void openCallBack(int code) {
+                        Log.e("--------->","------->toConnectPort code="+code);
+                        runOnUiThread(new Runnable() {
+                            @Override
+                            public void run() {
+                                mWebView.loadUrl("javascript:responsePortCode('"+name+","+code+"')");
+                                if (code == 1){
+                                    mPortList.add(serialPortManager);
+                                }else {
+                                    Toast.makeText(MainActivity.this, "串口未打开", Toast.LENGTH_SHORT).show();
+                                }
+                            }
+                        });
+                    }
+
+                    @Override
+                    public void closeCallBack(int code) {
 
+                    }
+                });
+
+            }
         }
     }
 

+ 7 - 2
app/src/main/java/com/naz/sdkdemo/helper/SerialPortManager.java

@@ -35,10 +35,16 @@ public class SerialPortManager {
                 Log.e("--------->","------->comBean.bRec="+comBean.bRec);
 
                 // 输出转换后的UTF-8字节数组
+                StringBuilder stringBuilder = new StringBuilder();
                 for (byte b : comBean.bRec) {
+                    char ch = (char)b;
                     Log.e("==========>","------->comBean.bRec="+b);
+                    Log.e("==========>","------->ch="+ch);
+                    stringBuilder.append(ch);
                 }
-                rxText = ByteUtil.ByteArrToHex(comBean.bRec);
+//                rxText = ByteUtil.ByteArrToHex(comBean.bRec);
+                rxText = stringBuilder.toString();
+                Log.e("==========>","------->rxText="+rxText);
                 mCallBack.dataCallBack(rxText);
             }
         };
@@ -54,7 +60,6 @@ public class SerialPortManager {
                     mHandler.sendMessage(message);
                 }
             };
-            serialHelper.setStickPackageHelper(new MyStickPackageHelper());
             open();
         }
     }