From 61cbbf80a666e6a608b35a436d3b25d59acacb5b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E2=80=9C=E8=99=9E=E6=B8=A0=E6=88=90=E2=80=9D?=
<“yuqucheng2006@qq.com”>
Date: Tue, 22 Sep 2026 11:25:21 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=93=9D=E7=89=99?=
=?UTF-8?q?=E6=89=AB=E6=8F=8F=E3=80=81=E8=87=AA=E5=8A=A8=E9=94=81=E5=B1=8F?=
=?UTF-8?q?=E5=92=8C=E7=BB=91=E5=AE=9A=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
1. 蓝牙扫描时改用ForceInitialize保证系统蓝牙关闭时能提示开启
2. 移除重复的ForceInitialize调用并避免重复初始化导致iOS扫描失效
3. 进入应用时设置不休眠并修正解锁计时起点为当前时间
4. 绑定失败时清空目标MAC防止无限重试循环
5. 调整个人信息页预制体的控件顺序
---
Assets/Res/ui/selfpage/selfpage.prefab | 308 +-----------------
Assets/Scripts/Bluetooth/BluetoothManager.cs | 3 +-
Assets/Scripts/Managers/DataManager.cs | 5 +-
.../ConnectDevice/ConnectDevicePageCtrl.cs | 5 +-
4 files changed, 12 insertions(+), 309 deletions(-)
diff --git a/Assets/Res/ui/selfpage/selfpage.prefab b/Assets/Res/ui/selfpage/selfpage.prefab
index bd74051..a4e2019 100644
--- a/Assets/Res/ui/selfpage/selfpage.prefab
+++ b/Assets/Res/ui/selfpage/selfpage.prefab
@@ -405,10 +405,9 @@ RectTransform:
- {fileID: 3208093675459988445}
- {fileID: 2804317011649488167}
- {fileID: 6062647938688273390}
- - {fileID: 1667034045599266742}
- {fileID: 7146889589913556336}
- {fileID: 1035419108335367957}
- - {fileID: 6032238728068850519}
+ - {fileID: 1667034045599266742}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -3670,6 +3669,7 @@ PrefabInstance:
- {fileID: 5423054187022209742, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
- {fileID: 9156379378820123957, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
- {fileID: 3894957977895714727, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
+ - {fileID: 8248368160412950350, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
@@ -3997,307 +3997,3 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ce7f9a66c3b832343bd86c4b491d90c8, type: 3}
m_Name:
m_EditorClassIdentifier:
---- !u!1001 &8438205999760478775
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- serializedVersion: 3
- m_TransformParent: {fileID: 6157072509248269050}
- m_Modifications:
- - target: {fileID: 184803144727737283, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 184803144727737283, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 184803144727737283, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 184803144727737283, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 184803144727737283, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -201.5
- objectReference: {fileID: 0}
- - target: {fileID: 886015656204995988, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 886015656204995988, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 886015656204995988, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 886015656204995988, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 886015656204995988, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -50
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_Pivot.x
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_Pivot.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.x
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalRotation.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalRotation.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalRotation.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2851268200846277789, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 2851268200846277789, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 2851268200846277789, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 2851268200846277789, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 2851268200846277789, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -353
- objectReference: {fileID: 0}
- - target: {fileID: 3289844309708103056, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 3289844309708103056, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 3289844309708103056, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 3289844309708103056, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 3289844309708103056, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -302.5
- objectReference: {fileID: 0}
- - target: {fileID: 4107443752149291401, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 4107443752149291401, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 4107443752149291401, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 4107443752149291401, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 4107443752149291401, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -100.5
- objectReference: {fileID: 0}
- - target: {fileID: 5030859281969820890, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 5030859281969820890, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 5030859281969820890, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 5030859281969820890, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 5030859281969820890, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -151
- objectReference: {fileID: 0}
- - target: {fileID: 6774584937554793577, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMax.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 6774584937554793577, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchorMin.y
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 6774584937554793577, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_SizeDelta.x
- value: 630
- objectReference: {fileID: 0}
- - target: {fileID: 6774584937554793577, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 345
- objectReference: {fileID: 0}
- - target: {fileID: 6774584937554793577, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -252
- objectReference: {fileID: 0}
- - target: {fileID: 8420805150731623820, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_Name
- value: "\u4E2A\u4EBA\u4FE1\u606F\u9875"
- objectReference: {fileID: 0}
- - target: {fileID: 8420805150731623820, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- propertyPath: m_IsActive
- value: 0
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_RemovedGameObjects: []
- m_AddedGameObjects: []
- m_AddedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: d9dcb18ed4ca0f741a416854a791047e, type: 3}
---- !u!224 &6032238728068850519 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 2786697444026413408, guid: d9dcb18ed4ca0f741a416854a791047e,
- type: 3}
- m_PrefabInstance: {fileID: 8438205999760478775}
- m_PrefabAsset: {fileID: 0}
diff --git a/Assets/Scripts/Bluetooth/BluetoothManager.cs b/Assets/Scripts/Bluetooth/BluetoothManager.cs
index 0438bca..22ad608 100644
--- a/Assets/Scripts/Bluetooth/BluetoothManager.cs
+++ b/Assets/Scripts/Bluetooth/BluetoothManager.cs
@@ -712,7 +712,8 @@ namespace Kill.Bluetooth
Log("蓝牙未初始化,自动触发初始化流程...");
_pendingStartScan = true;
_pendingScanTimeout = timeout;
- Initialize();
+ // 主动发起的扫描走 ForceInitialize:蓝牙被系统关闭时仍会给出开启提示
+ ForceInitialize();
return;
}
diff --git a/Assets/Scripts/Managers/DataManager.cs b/Assets/Scripts/Managers/DataManager.cs
index 9e27287..d9f1a7c 100644
--- a/Assets/Scripts/Managers/DataManager.cs
+++ b/Assets/Scripts/Managers/DataManager.cs
@@ -31,6 +31,8 @@ namespace Kill.Managers
InitUser();
GetSelectedDeviceMac();
LoadLockSettings();
+ // 应用内不自动息屏
+ Screen.sleepTimeout = SleepTimeout.NeverSleep;
}
public string token = "";
public UserInfo userInfo = new UserInfo();
@@ -149,7 +151,8 @@ namespace Kill.Managers
/// 进入app时调用:重置解锁时间,并读取当前账号的自动锁定时间配置
public void LoadLockSettings()
{
- lastUnlockTime = 0;
+ // 进入app时记录当前时间作为上锁计时起点,实现首次进入自动上锁
+ lastUnlockTime = Time.realtimeSinceStartup;
string userId = userInfo?.id ?? "";
lockTime = PlayerPrefs.GetInt(LOCK_TIME_KEY + "_" + userId, DEFAULT_LOCK_TIME);
}
diff --git a/Assets/Scripts/UI/Pages/ConnectDevice/ConnectDevicePageCtrl.cs b/Assets/Scripts/UI/Pages/ConnectDevice/ConnectDevicePageCtrl.cs
index c66ab57..44a39c6 100644
--- a/Assets/Scripts/UI/Pages/ConnectDevice/ConnectDevicePageCtrl.cs
+++ b/Assets/Scripts/UI/Pages/ConnectDevice/ConnectDevicePageCtrl.cs
@@ -387,7 +387,8 @@ public class ConnectDevicePageCtrl : MonoBehaviour
}
deviceObjects = new List();
// 用户进入配网页面,强制初始化以触发蓝牙开启提示
- BluetoothManager.Instance.ForceInitialize();
+ // 注意:不能同时调用 ForceInitialize 和 StartScan——StartScan 在未初始化时会再次触发
+ // Initialize,导致 iOS 上并发 DoInitialize,扫描回调失效而扫不到设备。交由首次扫描统一处理。
BluetoothManager.Instance.StartScan(999f); // 扫描999秒
}
}
@@ -797,6 +798,8 @@ public class ConnectDevicePageCtrl : MonoBehaviour
onError: (code,message) =>
{
Debug.Log($"绑定设备失败:{code},{message}");
+ // 绑定失败清除目标MAC,避免断开后自动重扫重连形成无限重试循环
+ BluetoothManager.Instance.ChangeAimMac("");
if(code==404)
{
errorTip="100331";