From c2596346d9290cfc0710432e1358cd60937afc08 Mon Sep 17 00:00:00 2001 From: Matthew Date: Fri, 26 Jul 2024 14:20:36 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E7=AA=97=E5=8F=A3=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=88=B7=E6=96=B0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/xypower/mpremote/DeviceActivity.java | 29 +++++++++++++------ .../main/res/menu/device_activity_actions.xml | 8 +++++ 2 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 app/src/main/res/menu/device_activity_actions.xml diff --git a/app/src/main/java/com/xypower/mpremote/DeviceActivity.java b/app/src/main/java/com/xypower/mpremote/DeviceActivity.java index c748077..501e397 100644 --- a/app/src/main/java/com/xypower/mpremote/DeviceActivity.java +++ b/app/src/main/java/com/xypower/mpremote/DeviceActivity.java @@ -20,6 +20,7 @@ import android.text.TextUtils; import android.text.format.Formatter; import android.util.Base64; import android.util.Log; +import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Toast; @@ -132,7 +133,6 @@ public class DeviceActivity extends AppCompatActivity { AdbKeyPair.generate(priKeyFile, pubKeyFile); } - mAdbKeyPair = AdbKeyPair.read(priKeyFile, pubKeyFile); final Context context = getApplicationContext(); @@ -150,7 +150,15 @@ public class DeviceActivity extends AppCompatActivity { } }); - mProgressDialog = ProgressDialog.show(this, "", "连接" + mDeviceIp + "中", true, true); + loadDeviceInfo(context, true); + } + + protected void loadDeviceInfo(final Context context, boolean firstConnect) { + + binding.deviceInfo.setText(""); + + String msg = firstConnect ? "连接" + mDeviceIp + "中" : "刷新数据中"; + mProgressDialog = ProgressDialog.show(this, "", msg, true, true); mProgressDialog.setOnCancelListener(new DialogInterface.OnCancelListener() { @Override public void onCancel(DialogInterface dialogInterface) { @@ -158,16 +166,12 @@ public class DeviceActivity extends AppCompatActivity { } }); - loadDeviceInfo(context); - } - protected void loadDeviceInfo(final Context context) { final File fileTmp = new File(getFilesDir(), "tmp"); if (!fileTmp.exists()) { fileTmp.mkdirs(); } - (new Thread(new Runnable() { @Override public void run() { @@ -340,9 +344,6 @@ public class DeviceActivity extends AppCompatActivity { ex.printStackTrace(); } } - - - } })).start(); } @@ -698,12 +699,22 @@ public class DeviceActivity extends AppCompatActivity { stringBuilder.append("
"); } + @Override + public boolean onCreateOptionsMenu(Menu menu) { + // Inflate the menu; this adds items to the action bar if it is present. + getMenuInflater().inflate(R.menu.device_activity_actions, menu); + return true; + } + @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: finish(); return false; + case R.id.action_refresh: + loadDeviceInfo(getApplicationContext(), false); + return false; default: return super.onOptionsItemSelected(item); } diff --git a/app/src/main/res/menu/device_activity_actions.xml b/app/src/main/res/menu/device_activity_actions.xml new file mode 100644 index 0000000..da3105e --- /dev/null +++ b/app/src/main/res/menu/device_activity_actions.xml @@ -0,0 +1,8 @@ + + + + \ No newline at end of file