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";