From b00a7c62f4a7a5bf32689b6614ebf91b36c581dc Mon Sep 17 00:00:00 2001
From: chenweijie <chris4everchan@gmail.com>
Date: Fri, 27 Sep 2024 16:48:15 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9Esn=E5=B1=95=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/src/main/AndroidManifest.xml              | 15 ++++---
 .../safetywatcher/watcher/ui/AboutActivity.kt | 35 ++++++++++++++++
 .../watcher/ui/SettingActivity.kt             |  4 ++
 app/src/main/res/layout/activity_about.xml    | 42 +++++++++++++++++++
 app/src/main/res/layout/activity_setting.xml  | 23 ++++++++++
 app/src/main/res/values/strings.xml           |  2 +
 6 files changed, 115 insertions(+), 6 deletions(-)
 create mode 100644 app/src/main/java/com/yinuo/safetywatcher/watcher/ui/AboutActivity.kt
 create mode 100644 app/src/main/res/layout/activity_about.xml

diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 4a08466..2b68aa9 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -46,17 +46,20 @@
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
         <activity
-            android:name=".watcher.ui.LinkSettingActivity"
-            android:screenOrientation="landscape"
+            android:name=".watcher.ui.AboutActivity"
             android:exported="false" />
+        <activity
+            android:name=".watcher.ui.LinkSettingActivity"
+            android:exported="false"
+            android:screenOrientation="landscape" />
         <activity
             android:name=".watcher.ui.SensorCalibrationListActivity"
-            android:screenOrientation="landscape"
-            android:exported="false" />
+            android:exported="false"
+            android:screenOrientation="landscape" />
         <activity
             android:name=".watcher.ui.SensorCalibrationActivity"
-            android:screenOrientation="landscape"
-            android:exported="false" />
+            android:exported="false"
+            android:screenOrientation="landscape" />
 
         <service
             android:name=".watcher.services.HeartbeatService"
diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/AboutActivity.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/AboutActivity.kt
new file mode 100644
index 0000000..77c091e
--- /dev/null
+++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/AboutActivity.kt
@@ -0,0 +1,35 @@
+package com.yinuo.safetywatcher.watcher.ui
+
+import android.annotation.SuppressLint
+import android.view.View
+import com.yinuo.safetywatcher.R
+import com.yinuo.safetywatcher.databinding.ActivityAboutBinding
+import com.yinuo.safetywatcher.databinding.ActivityNetSettingBinding
+import com.yinuo.safetywatcher.watcher.base.NoOptionsActivity
+import com.yinuo.safetywatcher.watcher.utils.LztekUtil
+
+
+class AboutActivity : NoOptionsActivity() {
+    private val mBinding by lazy {
+        ActivityAboutBinding.inflate(layoutInflater)
+    }
+
+    override fun getTopBarTitle(): String? {
+        return getString(R.string.back)
+    }
+
+    override fun generateContentView(): View {
+        return mBinding.root
+    }
+
+    @SuppressLint("SetTextI18n")
+    override fun initView() {
+        mBinding.apply {
+            tvSn.text = LztekUtil.getSn()
+        }
+    }
+
+    override fun onDestroy() {
+        super.onDestroy()
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/SettingActivity.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/SettingActivity.kt
index 41762b3..9dbb148 100644
--- a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/SettingActivity.kt
+++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/SettingActivity.kt
@@ -70,6 +70,10 @@ class SettingActivity : NoOptionsActivity() {
             itemRecovery.setOnClickListener {
                 resetFactoryDialog.show(supportFragmentManager, "resetDialog")
             }
+
+            itemAbout.setOnClickListener {
+                startActivity(Intent(this@SettingActivity, AboutActivity::class.java))
+            }
         }
     }
 
diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml
new file mode 100644
index 0000000..c9a9fc0
--- /dev/null
+++ b/app/src/main/res/layout/activity_about.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    tools:ignore="MissingDefaultResource">
+
+    <LinearLayout
+        android:id="@+id/item_time"
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/_108dp"
+        android:gravity="center_vertical"
+        android:orientation="horizontal"
+        android:paddingStart="@dimen/_121dp">
+
+        <TextView
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/_21dp"
+            android:layout_weight="2"
+            android:includeFontPadding="false"
+            android:text="@string/sn_about"
+            android:textColor="@color/white"
+            android:textSize="@dimen/_36dp" />
+
+        <TextView
+            android:id="@+id/tv_sn"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/_21dp"
+            android:layout_weight="8"
+            android:includeFontPadding="false"
+            android:textColor="@color/white"
+            android:textSize="@dimen/_36dp" />
+    </LinearLayout>
+
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/_2dp"
+        android:background="@color/_242f4d" />
+</LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_setting.xml b/app/src/main/res/layout/activity_setting.xml
index 70f1268..6a77174 100644
--- a/app/src/main/res/layout/activity_setting.xml
+++ b/app/src/main/res/layout/activity_setting.xml
@@ -312,5 +312,28 @@
                 android:textColor="@color/white"
                 android:textSize="@dimen/_36dp" />
         </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/item_about"
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/_108dp"
+            android:focusable="true"
+            android:gravity="center_vertical"
+            android:orientation="horizontal"
+            android:paddingStart="@dimen/_121dp">
+
+            <ImageView
+                android:layout_width="@dimen/_32dp"
+                android:layout_height="@dimen/_32dp"
+                android:src="@mipmap/ic_query" />
+
+            <TextView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/_21dp"
+                android:text="@string/about_setting"
+                android:textColor="@color/white"
+                android:textSize="@dimen/_36dp" />
+        </LinearLayout>
     </LinearLayout>
 </ScrollView>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 75031fe..03c921e 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -7,6 +7,7 @@
     <string name="recovery">报警重置</string>
     <string name="camera">摄像头</string>
     <string name="time_setting">时间设置</string>
+    <string name="sn_about">设备SN号</string>
     <string name="light_setting">背光设置</string>
     <string name="query_data">查询数据</string>
     <string name="warn_data">报警数据</string>
@@ -20,6 +21,7 @@
     <string name="net_setting">网络参数设置</string>
     <string name="wifi_setting">WIFI设置</string>
     <string name="recovery_setting">恢复出厂设置</string>
+    <string name="about_setting">关于本机</string>
     <string name="sync_sensor_txt">同步传感器数据</string>
     <string name="sync_warn_txt">同步报警数据</string>
     <string name="sync_video_txt">同步视频</string>