From 685812c2040b48d06422caa61c03666c9ffa3952 Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期二, 21 一月 2025 13:45:40 +0800 Subject: [PATCH] # --- app/src/main/java/com/example/agvcontroller/StartActivity.java | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) diff --git a/app/src/main/java/com/example/agvcontroller/StartActivity.java b/app/src/main/java/com/example/agvcontroller/StartActivity.java index 74142f4..628ccb8 100644 --- a/app/src/main/java/com/example/agvcontroller/StartActivity.java +++ b/app/src/main/java/com/example/agvcontroller/StartActivity.java @@ -2,6 +2,7 @@ import android.content.Context; import android.content.Intent; +import android.content.SharedPreferences; import android.os.Bundle; import android.util.Log; import android.view.View; @@ -12,11 +13,14 @@ import androidx.recyclerview.widget.RecyclerView; import com.example.agvcontroller.socket.SocketManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; +import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; @@ -26,6 +30,7 @@ private List<Item> items; private ItemAdapter adapter; private Button addItem; + private SharedPreferences sharedPreferences; SocketManager socketManager; @Override @@ -45,7 +50,10 @@ recyclerView = findViewById(R.id.recyclerView); recyclerView.setLayoutManager(new LinearLayoutManager(this)); + sharedPreferences = getSharedPreferences("AGVControllerPrefs", MODE_PRIVATE); + // Load items from SharedPreferences + items = loadItemsFromSharedPreferences(); items = new ArrayList<>(); @@ -76,6 +84,16 @@ socketManager.startServer(8022); } + private List<Item> loadItemsFromSharedPreferences() { + Gson gson = new Gson(); + String json = sharedPreferences.getString("items", null); + if (json != null) { + Type type = new TypeToken<List<Item>>(){}.getType(); + return gson.fromJson(json, type); + } + return new ArrayList<>(); + } + @Subscribe(threadMode = ThreadMode.MAIN) public void onDeviceConnected(Item deviceAddress) { Log.i("EventBus", "Received device connected: " + deviceAddress); -- Gitblit v1.9.1