From 0d580a2b6e4ac2013ba5cbab046bdabf956b301b Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 14 八月 2024 15:18:17 +0800
Subject: [PATCH] #

---
 app/src/main/java/com/example/agvcontroller/MainActivity.java |  107 +++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 75 insertions(+), 32 deletions(-)

diff --git a/app/src/main/java/com/example/agvcontroller/MainActivity.java b/app/src/main/java/com/example/agvcontroller/MainActivity.java
index 4b3d37a..13761d8 100644
--- a/app/src/main/java/com/example/agvcontroller/MainActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/MainActivity.java
@@ -6,11 +6,19 @@
 import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
 import android.os.Vibrator;
 import android.util.Log;
+import android.view.KeyEvent;
+import android.view.MotionEvent;
 import android.view.View;
 import android.widget.Button;
 
+import com.example.agvcontroller.protocol.AgvAction;
+import com.example.agvcontroller.protocol.ForceSwitchAction;
+import com.example.agvcontroller.protocol2.AgvPackage;
+import com.example.agvcontroller.protocol2.PackagePart;
 import com.example.agvcontroller.socket.NettyServerHandler;
 import com.example.agvcontroller.socket.SocketManager;
 import com.example.agvcontroller.socket.SocketTask;
@@ -32,54 +40,89 @@
     private Button vibrateButton;
     private Socket socket;
     SocketManager socketManager;
+
+    private boolean isDowm = false;
+    private Handler handler = new Handler(new Handler.Callback() {
+        @Override
+        public boolean handleMessage(Message msg) {
+
+
+            AgvAction agvAction = new AgvAction<>(ForceSwitchAction.class)
+                    .setAgvNo("1")
+                    .setSerialNo("asdsadsadsad")
+                    .setVal(1)
+                    .bodySync((action) -> action.setPwd((short) 21));
+
+
+            // 鍦ㄨ繖閲岃繘琛屾墦鍗拌緭鍑�
+            System.out.println("鎵撳嵃杈撳嚭");
+            if (isDowm) {
+                System.out.println(agvAction);
+//                byte[] message2 = new byte[]{0x01, 0x02, 0x03, 0x06}; // 绀轰緥娑堟伅
+                nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+                handler.sendEmptyMessageDelayed(0, 100);
+            }
+            return false;
+        }
+    });
+
+    String clientId;
     NettyServerHandler nettyServerHandler;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
 
-        // 浣滀负瀹㈡埛绔繛鎺�
-        //SocketManager.getInstance().setHostAndPort("192.168.4.188", 802);
-        //SocketManager.getInstance().connect();
-
-        //SocketManager.getInstance().setPort(8080);
-        //SocketManager.getInstance().startServer();
-
-        // 璁剧疆绔彛鍙峰苟鍚姩鏈嶅姟绔�
-        //SocketManager.getInstance().setPort(8080);
-        //socketManager = new SocketManager();
-        //socketManager.startServer(8080);
-
-        // 鍚姩鏈嶅姟绔�
-        //new Thread(() -> {
-        //    SocketManager.getInstance().startServer();
-        //}).start();
-
         vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
         vibrateButton = findViewById(R.id.btn_stop);
 
         Intent intent = getIntent();
-        String clientId = intent.getStringExtra("message");
+        clientId = intent.getStringExtra("message");
         Log.i("message1",clientId);
+        // 鍒濆鍖栧崟杞翠娇鑳�
+        int single = 9;
+        int len = PackagePart.UNIQUENO.getLen()
+                + PackagePart.TIMESTAMP.getLen()
+                + PackagePart.COMMAND_MARK.getLen()
+                + 16 + 1 + 1 + 1;
+        for (int i = 0; i < single; i++) {
 
-        vibrateButton.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                if (vibrator != null && vibrator.hasVibrator()) {
-                    //vibrator.vibrate(500);
-                }
+        }
+        byte[] message2 = new byte[]{0x01, 0x02, 0x03, 0x06}; // 绀轰緥娑堟伅
+        nettyServerHandler.sendMessageToClient(clientId, message2); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
 
-                //String clientId = "/192.168.4.188:63160";
-                byte[] message1 = new byte[]{0x01, 0x02, 0x03, 0x04}; // 绀轰緥娑堟伅
-                Log.i("message2",clientId);
-                Log.i("message3", Arrays.toString(message1));
-
-                nettyServerHandler.sendMessageToClient(clientId, message1); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
-            }
-        });
+        //vibrateButton.setOnClickListener(new View.OnClickListener() {
+        //    @Override
+        //    public void onClick(View v) {
+        //        if (vibrator != null && vibrator.hasVibrator()) {
+        //            //vibrator.vibrate(500);
+        //        }
+        //
+        //        //String clientId = "/192.168.4.188:63160";
+        //        byte[] message1 = new byte[]{0x01, 0x02, 0x03, 0x04}; // 绀轰緥娑堟伅
+        //        Log.i("message2",clientId);
+        //        Log.i("message3", Arrays.toString(message1));
+        //
+        //        nettyServerHandler.sendMessageToClient(clientId, message1); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+        //    }
+        //});
+        vibrateButton.setOnTouchListener(new CarTouchButton());
 
     }
 
+    private class CarTouchButton implements View.OnTouchListener {
+
+        @Override
+        public boolean onTouch(View view, MotionEvent motionEvent) {
+            if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
+                isDowm = true;
+                handler.sendEmptyMessage(0);
+            } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
+                isDowm = false;
+            }
+            return false;
+        }
+    }
     @Override
     protected void onDestroy() {
         super.onDestroy();

--
Gitblit v1.9.1