diff --git a/Assets/Plugins/Android/proguard-user.txt b/Assets/Plugins/Android/proguard-user.txt new file mode 100644 index 0000000..a626f74 --- /dev/null +++ b/Assets/Plugins/Android/proguard-user.txt @@ -0,0 +1,5 @@ +# 保留 Unity Bluetooth LE 插件类(通过 AndroidJavaClass 反射调用,R8 无法检测到使用) +-keep class com.shatalmic.unityandroidbluetoothlelib.** { *; } + +# 保留 FilePicker 插件类(通过 AndroidJavaClass 反射调用,R8 无法检测到使用) +-keep class com.unity.filepicker.** { *; } diff --git a/Assets/Plugins/Android/proguard-user.txt.meta b/Assets/Plugins/Android/proguard-user.txt.meta new file mode 100644 index 0000000..7b57796 --- /dev/null +++ b/Assets/Plugins/Android/proguard-user.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d5f703e295166774fafe7ad65dd67c9d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Res/ui/deviceinfopage/视频和音效.prefab b/Assets/Res/ui/deviceinfopage/视频和音效.prefab index dbbb00c..21fa9cb 100644 --- a/Assets/Res/ui/deviceinfopage/视频和音效.prefab +++ b/Assets/Res/ui/deviceinfopage/视频和音效.prefab @@ -11,7 +11,6 @@ GameObject: - component: {fileID: 4786212675994554498} - component: {fileID: 8318397439137567051} - component: {fileID: 5676474280039337618} - - component: {fileID: 4248423808421178093} m_Layer: 5 m_Name: Text (Legacy) m_TagString: Untagged @@ -79,20 +78,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Hello ---- !u!114 &4248423808421178093 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4192673911870018} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 89f1d49b50a31514787b4e268b1c73bb, type: 3} - m_Name: - m_EditorClassIdentifier: - textKey: 100183 + m_Text: Arc --- !u!1 &306765244734699581 GameObject: m_ObjectHideFlags: 0 @@ -197,7 +183,6 @@ GameObject: - component: {fileID: 6429828516758610706} - component: {fileID: 7660135154929714612} - component: {fileID: 1918055120032442058} - - component: {fileID: 3554390466595939383} m_Layer: 5 m_Name: Text (Legacy) m_TagString: Untagged @@ -265,20 +250,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Goodbye ---- !u!114 &3554390466595939383 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 457407246350743563} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 89f1d49b50a31514787b4e268b1c73bb, type: 3} - m_Name: - m_EditorClassIdentifier: - textKey: 100184 + m_Text: Hardlight --- !u!1 &629627766403464918 GameObject: m_ObjectHideFlags: 0 @@ -411,7 +383,6 @@ GameObject: - component: {fileID: 8573800598189694494} - component: {fileID: 4432461300801424837} - component: {fileID: 3897388656227690151} - - component: {fileID: 4689027556535122234} m_Layer: 5 m_Name: Text (Legacy) m_TagString: Untagged @@ -479,20 +450,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Hello ---- !u!114 &4689027556535122234 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 669998971470161161} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 89f1d49b50a31514787b4e268b1c73bb, type: 3} - m_Name: - m_EditorClassIdentifier: - textKey: 100185 + m_Text: Ion --- !u!1 &777788460132094667 GameObject: m_ObjectHideFlags: 0 @@ -1961,6 +1919,127 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: [] +--- !u!1 &2834650518746682641 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3969476368030556583} + - component: {fileID: 3358997220216945587} + - component: {fileID: 6111907762562912606} + - component: {fileID: 985684051599768521} + m_Layer: 5 + m_Name: 5 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3969476368030556583 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2834650518746682641} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4957582966547559762} + m_Father: {fileID: 2081490233171610012} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -560} + m_SizeDelta: {x: -60, y: 80} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &3358997220216945587 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2834650518746682641} + m_CullTransparentMesh: 1 +--- !u!114 &6111907762562912606 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2834650518746682641} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 13e0eb0cb15f1924d90153431b39bc2a, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &985684051599768521 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2834650518746682641} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6111907762562912606} + m_OnClick: + m_PersistentCalls: + m_Calls: [] --- !u!1 &3080589279257668571 GameObject: m_ObjectHideFlags: 0 @@ -2490,7 +2569,6 @@ GameObject: - component: {fileID: 182923072947694601} - component: {fileID: 8629691201413271309} - component: {fileID: 4158084090901835048} - - component: {fileID: 2438917980612067562} m_Layer: 5 m_Name: Text (Legacy) m_TagString: Untagged @@ -2558,20 +2636,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Hello ---- !u!114 &2438917980612067562 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3441044964715230807} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 89f1d49b50a31514787b4e268b1c73bb, type: 3} - m_Name: - m_EditorClassIdentifier: - textKey: 100187 + m_Text: Quantum --- !u!1 &3443392837279164566 GameObject: m_ObjectHideFlags: 0 @@ -3031,6 +3096,7 @@ MonoBehaviour: - {fileID: 618963599968714376} - {fileID: 4417822950724485663} - {fileID: 7103060359534593317} + - {fileID: 985684051599768521} confirmBtn: {fileID: 3720356942245563436} cancelBtn: {fileID: 6862151831119729504} --- !u!1 &4126862431282601540 @@ -5541,6 +5607,7 @@ RectTransform: - {fileID: 8559410118621773077} - {fileID: 1851864943904775615} - {fileID: 526391051047360187} + - {fileID: 3969476368030556583} - {fileID: 4778062111862750175} - {fileID: 858675025676737603} m_Father: {fileID: 7174140159888755812} @@ -5548,7 +5615,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 12, y: 785} + m_SizeDelta: {x: 12, y: 875} m_Pivot: {x: 0.5, y: 0} --- !u!222 &6811716250680681758 CanvasRenderer: @@ -5939,6 +6006,85 @@ MonoBehaviour: m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 0 +--- !u!1 &8505393087765356365 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4957582966547559762} + - component: {fileID: 3342040580630088133} + - component: {fileID: 2589844457269652038} + m_Layer: 5 + m_Name: Text (Legacy) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4957582966547559762 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8505393087765356365} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3969476368030556583} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3342040580630088133 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8505393087765356365} + m_CullTransparentMesh: 1 +--- !u!114 &2589844457269652038 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8505393087765356365} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 12800000, guid: f4c31d68e7cd3454685bb4c132a52f58, type: 3} + m_FontSize: 30 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 3 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Sonic --- !u!1 &8572327038564860220 GameObject: m_ObjectHideFlags: 0 @@ -5950,7 +6096,6 @@ GameObject: - component: {fileID: 5169587443665871409} - component: {fileID: 2382350194557616285} - component: {fileID: 160637896610745996} - - component: {fileID: 276033722142287802} m_Layer: 5 m_Name: Text (Legacy) m_TagString: Untagged @@ -6018,20 +6163,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Hello ---- !u!114 &276033722142287802 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8572327038564860220} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 89f1d49b50a31514787b4e268b1c73bb, type: 3} - m_Name: - m_EditorClassIdentifier: - textKey: 100186 + m_Text: Plasma --- !u!1 &8589595913971389064 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Bluetooth/Protocol/BLEProtocolStructs.cs b/Assets/Scripts/Bluetooth/Protocol/BLEProtocolStructs.cs index 98aeec2..b5a41a6 100644 --- a/Assets/Scripts/Bluetooth/Protocol/BLEProtocolStructs.cs +++ b/Assets/Scripts/Bluetooth/Protocol/BLEProtocolStructs.cs @@ -1163,11 +1163,12 @@ namespace Kill.Bluetooth.Protocol /// public enum SoundEffectType : byte { - Hello = 0x00, // Hello音效 - Goodbye = 0x01, // Goodbye音效 - Test = 0x02, // Test音效 - BIU = 0x03, // BIU音效 - Main = 0x04 // Main音效 + Arc = 0x00, // Arc音效 + Hardlight = 0x01, // Hardlight音效 + Ion = 0x02, // Ion音效 + Plasma = 0x03, // Plasma音效 + Quantum = 0x04, // Quantum音效 + Sonic = 0x05, // Sonic音效 } /// @@ -1230,11 +1231,12 @@ namespace Kill.Bluetooth.Protocol { return SoundType switch { - SoundEffectType.Hello => "Hello", - SoundEffectType.Goodbye => "Goodbye", - SoundEffectType.Test => "Test", - SoundEffectType.BIU => "BIU", - SoundEffectType.Main => "Main", + SoundEffectType.Arc => "Arc", + SoundEffectType.Hardlight => "Hardlight", + SoundEffectType.Ion => "Ion", + SoundEffectType.Plasma => "Plasma", + SoundEffectType.Quantum => "Quantum", + SoundEffectType.Sonic => "Sonic", _ => "未知" }; } diff --git a/Assets/Scripts/UI/Pages/BluetoothDemoUI.cs b/Assets/Scripts/UI/Pages/BluetoothDemoUI.cs index c62019a..2997957 100644 --- a/Assets/Scripts/UI/Pages/BluetoothDemoUI.cs +++ b/Assets/Scripts/UI/Pages/BluetoothDemoUI.cs @@ -2517,12 +2517,13 @@ namespace Kill.UI.Pages string typeValue = trimmed.Substring(typeIndex + 3, endIndex - typeIndex - 3).Trim(); control.SoundType = typeValue switch { - "Hello" or "0" => SoundEffectType.Hello, - "Goodbye" or "1" => SoundEffectType.Goodbye, - "Test" or "2" => SoundEffectType.Test, - "BIU" or "3" => SoundEffectType.BIU, - "Main" or "4" => SoundEffectType.Main, - _ => SoundEffectType.Main + "Arc" or "0" => SoundEffectType.Arc, + "Hardlight" or "1" => SoundEffectType.Hardlight, + "Ion" or "2" => SoundEffectType.Ion, + "Plasma" or "3" => SoundEffectType.Plasma, + "Quantum" or "4" => SoundEffectType.Quantum, + "Sonic" or "5" => SoundEffectType.Sonic, + _ => SoundEffectType.Arc }; } diff --git a/Assets/Scripts/UI/Pages/DeviceInfoPage/DeviceInfoPage.cs b/Assets/Scripts/UI/Pages/DeviceInfoPage/DeviceInfoPage.cs index 2032140..8101a83 100644 --- a/Assets/Scripts/UI/Pages/DeviceInfoPage/DeviceInfoPage.cs +++ b/Assets/Scripts/UI/Pages/DeviceInfoPage/DeviceInfoPage.cs @@ -431,8 +431,8 @@ namespace Kill.UI.Pages bool success = await HomePageCtrl.Instance.SendBleCommandByWifiAsync(BLEConstants.CMD_FACTORY_RESET, new byte[] { 0x01 }); if (success) { - LoadingUI.Hide(); ResetDeviceAsync(); + LoadingUI.Hide(); } else { @@ -452,6 +452,7 @@ namespace Kill.UI.Pages BluetoothManager.Instance.ChangeAimMac(""); BluetoothManager.Instance.Disconnect(); ResetDeviceAsync(); + LoadingUI.Hide(); } else { @@ -544,8 +545,9 @@ namespace Kill.UI.Pages } public IEnumerator BackToHomePage() { + LoadingUI.Show(); yield return new WaitForSeconds(2); - LoadingUI.Hide(); + LoadingUI.ForceHide(); UIManager.Instance.OpenMainPage(UIManager.PageName.homePage); } diff --git a/Assets/Scripts/UI/Pages/DeviceInfoPage/VideoAndSoundSetting.cs b/Assets/Scripts/UI/Pages/DeviceInfoPage/VideoAndSoundSetting.cs index 7d635d5..e526d11 100644 --- a/Assets/Scripts/UI/Pages/DeviceInfoPage/VideoAndSoundSetting.cs +++ b/Assets/Scripts/UI/Pages/DeviceInfoPage/VideoAndSoundSetting.cs @@ -27,17 +27,14 @@ namespace Kill.UI.Pages private List videoLengthKeyList = new List { "100180", "100181", "100182" }; private List videoLengthStrList = new List(); private List videoLengthValueList = new List { 0x03, 0x05, 0x0A }; - - // 音效类型选项 - private List soundEffectKeyList = new List { "100183", "100184", "100185", "100186", "100187" }; - private List soundEffectStrList = new List(); private List soundEffectValueList = new List { - SoundEffectType.Hello, - SoundEffectType.Goodbye, - SoundEffectType.Test, - SoundEffectType.BIU, - SoundEffectType.Main + SoundEffectType.Arc, + SoundEffectType.Hardlight, + SoundEffectType.Ion, + SoundEffectType.Plasma, + SoundEffectType.Quantum, + SoundEffectType.Sonic }; private MultimediaControl multimediaSetting; @@ -63,12 +60,6 @@ namespace Kill.UI.Pages { videoLengthStrList.Add(LanguageManager.Instance.GetLanguage(key)); } - - soundEffectStrList.Clear(); - foreach (var key in soundEffectKeyList) - { - soundEffectStrList.Add(LanguageManager.Instance.GetLanguage(key)); - } } /// @@ -143,7 +134,7 @@ namespace Kill.UI.Pages VideoRecordEnable = config?.video_record_enable ?? false, RecordDuration = config?.record_duration ?? 0x05, SoundEnable = config?.sound_enable ?? true, - SoundType = DeviceConfig.ParseServerEnum(config?.sound_type, SoundEffectType.Hello), + SoundType = DeviceConfig.ParseServerEnum(config?.sound_type, SoundEffectType.Arc), Volume = config?.volume ?? 10 }; UpdateUI(); @@ -178,11 +169,9 @@ namespace Kill.UI.Pages } // 更新音效类型显示 - int soundEffectIndex = GetSoundEffectIndexFromValue(multimediaSetting.SoundType); - if (soundEffectValueText != null && soundEffectIndex >= 0 && soundEffectIndex < soundEffectStrList.Count) - { - soundEffectValueText.text = soundEffectStrList[soundEffectIndex]; - } + + soundEffectValueText.text = multimediaSetting.SoundType.ToString(); + // 更新音量滑块 volumeSlider.value = multimediaSetting.Volume; diff --git a/Assets/Scripts/UI/Pages/HomePage/HomePageCtrl.cs b/Assets/Scripts/UI/Pages/HomePage/HomePageCtrl.cs index 70b2b16..d582c9e 100644 --- a/Assets/Scripts/UI/Pages/HomePage/HomePageCtrl.cs +++ b/Assets/Scripts/UI/Pages/HomePage/HomePageCtrl.cs @@ -800,6 +800,9 @@ namespace Kill.UI.Pages normalPage.SetActive(false); selectedDevice = null; selectDeviceButton.gameObject.SetActive(false); + DataManager.Instance.OwnedDevices=new List(); + DataManager.Instance.SharedDevices=new List(); + DataManager.Instance.selectedDevice=null; return; } else @@ -876,9 +879,13 @@ namespace Kill.UI.Pages deviceCtrl?.InitDeviceControl(false); await DataManager.Instance.GetDeviceConfig(selectedDevice.ble_mac); await DataManager.Instance.GetScheduleTasks(selectedDevice.ble_mac); - scheduleSettingButton.interactable = true; - moreSettingButton.interactable = true; - InitDeviceUIFromConfig(); + // await 期间蓝牙可能已连接,避免用 WiFi 数据覆盖 BLE 数据 + if (!hasBluetooth) + { + scheduleSettingButton.interactable = true; + moreSettingButton.interactable = true; + InitDeviceUIFromConfig(); + } } else { @@ -1618,6 +1625,8 @@ namespace Kill.UI.Pages if (stopPolling) break; ScheduleUIUpdate(() => { + // await 期间蓝牙可能已连接,避免用 WiFi 数据覆盖 BLE 数据 + if (hasBluetooth) return; scheduleSettingButton.interactable = true; moreSettingButton.interactable = true; deviceState?.UpdateDeviceState(hasBluetooth, hasWifi); diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 0982704..c057d03 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -271,7 +271,7 @@ PlayerSettings: useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 1 useCustomGradleSettingsTemplate: 1 - useCustomProguardFile: 0 + useCustomProguardFile: 1 AndroidTargetArchitectures: 2 AndroidTargetDevices: 1 AndroidSplashScreenScale: 0