refactor(home&deviceinfo): 完善设备连接状态管理与恢复出厂逻辑
1. 新增将WiFi和蓝牙状态存入DataManager全局管理 2. 更新多语言文案,优化反馈提示文本 3. 修复校验密码页面清空错误提示逻辑 4. 重构设备恢复出厂设置流程,适配WiFi和蓝牙两种连接模式 5. 调整设备信息页面UI布局与绑定控件
This commit is contained in:
parent
17c63802f3
commit
85df7e39dc
@ -1461,8 +1461,8 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "100293",
|
"key": "100293",
|
||||||
"zh": "WiFi模式下暂不支持指纹设置,请通过蓝牙连接操作",
|
"zh": "WiFi模式下暂不支持该操作,请连接蓝牙",
|
||||||
"en": "Fingerprint settings are not supported in WiFi mode. Please connect via Bluetooth."
|
"en": "WiFi mode does not support this operation. Please connect to Bluetooth."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "100294",
|
"key": "100294",
|
||||||
@ -1503,6 +1503,11 @@
|
|||||||
"key": "100301",
|
"key": "100301",
|
||||||
"zh": "反馈内容不能为空",
|
"zh": "反馈内容不能为空",
|
||||||
"en": "Feedback content cannot be empty"
|
"en": "Feedback content cannot be empty"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "100302",
|
||||||
|
"zh": "恢复出厂设置失败,请稍后重试",
|
||||||
|
"en": "Reset failed, please try again later"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2264,7 +2264,7 @@ RectTransform:
|
|||||||
m_AnchorMin: {x: 0, y: 1}
|
m_AnchorMin: {x: 0, y: 1}
|
||||||
m_AnchorMax: {x: 0, y: 1}
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
m_AnchoredPosition: {x: 295, y: -55}
|
m_AnchoredPosition: {x: 295, y: -55}
|
||||||
m_SizeDelta: {x: 590, y: 42}
|
m_SizeDelta: {x: 590, y: 50}
|
||||||
m_Pivot: {x: 0.5, y: 1}
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
--- !u!222 &2575572773791473978
|
--- !u!222 &2575572773791473978
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
@ -2921,7 +2921,7 @@ MonoBehaviour:
|
|||||||
m_OnClick:
|
m_OnClick:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls:
|
m_Calls:
|
||||||
- m_Target: {fileID: 5305376504236266477}
|
- m_Target: {fileID: 1829438812490820177}
|
||||||
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
|
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
|
||||||
m_MethodName: SetActive
|
m_MethodName: SetActive
|
||||||
m_Mode: 6
|
m_Mode: 6
|
||||||
@ -7070,7 +7070,7 @@ RectTransform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 8061347571894376768}
|
m_GameObject: {fileID: 8061347571894376768}
|
||||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
@ -7082,7 +7082,7 @@ RectTransform:
|
|||||||
- {fileID: 2859089164995719961}
|
- {fileID: 2859089164995719961}
|
||||||
- {fileID: 537902066735883185}
|
- {fileID: 537902066735883185}
|
||||||
- {fileID: 1020774894406731393}
|
- {fileID: 1020774894406731393}
|
||||||
- {fileID: 5305376504236266478}
|
- {fileID: 2162368835647687423}
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
@ -8873,7 +8873,7 @@ PrefabInstance:
|
|||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
|
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
|
||||||
value:
|
value:
|
||||||
objectReference: {fileID: 5305376504236266477}
|
objectReference: {fileID: 1829438812490820177}
|
||||||
- target: {fileID: 7786001869424608972, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
- target: {fileID: 7786001869424608972, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
|
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
|
||||||
@ -8909,13 +8909,13 @@ PrefabInstance:
|
|||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
m_AddedComponents: []
|
m_AddedComponents: []
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 52c284b3dc8d7b94297736ede9ad1f7e, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: 52c284b3dc8d7b94297736ede9ad1f7e, type: 3}
|
||||||
--- !u!1 &5305376504236266477 stripped
|
--- !u!1 &1829438812490820177 stripped
|
||||||
GameObject:
|
GameObject:
|
||||||
m_CorrespondingSourceObject: {fileID: 5819498693055166909, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
m_CorrespondingSourceObject: {fileID: 5819498693055166909, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
||||||
type: 3}
|
type: 3}
|
||||||
m_PrefabInstance: {fileID: 5305376504236266476}
|
m_PrefabInstance: {fileID: 5305376504236266476}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!224 &5305376504236266478 stripped
|
--- !u!224 &2162368835647687423 stripped
|
||||||
RectTransform:
|
RectTransform:
|
||||||
m_CorrespondingSourceObject: {fileID: 6314676893636565267, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
m_CorrespondingSourceObject: {fileID: 6314676893636565267, guid: 52c284b3dc8d7b94297736ede9ad1f7e,
|
||||||
type: 3}
|
type: 3}
|
||||||
|
|||||||
@ -87,6 +87,7 @@ GameObject:
|
|||||||
- component: {fileID: 3667549666672144347}
|
- component: {fileID: 3667549666672144347}
|
||||||
- component: {fileID: 1920078014523356616}
|
- component: {fileID: 1920078014523356616}
|
||||||
- component: {fileID: 6975337548619890174}
|
- component: {fileID: 6975337548619890174}
|
||||||
|
- component: {fileID: 1960403026344819574}
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: "\u5F53\u524D\u8BBE\u5907"
|
m_Name: "\u5F53\u524D\u8BBE\u5907"
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@ -205,6 +206,36 @@ MonoBehaviour:
|
|||||||
m_ChildScaleWidth: 0
|
m_ChildScaleWidth: 0
|
||||||
m_ChildScaleHeight: 0
|
m_ChildScaleHeight: 0
|
||||||
m_ReverseArrangement: 0
|
m_ReverseArrangement: 0
|
||||||
|
--- !u!114 &1960403026344819574
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 106281364441604106}
|
||||||
|
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: 0}
|
||||||
|
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!1 &106570155792501790
|
--- !u!1 &106570155792501790
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -11212,6 +11243,7 @@ GameObject:
|
|||||||
- component: {fileID: 6353094632954149818}
|
- component: {fileID: 6353094632954149818}
|
||||||
- component: {fileID: 737337850497317553}
|
- component: {fileID: 737337850497317553}
|
||||||
- component: {fileID: 6863394478891871580}
|
- component: {fileID: 6863394478891871580}
|
||||||
|
- component: {fileID: 2879602480493971984}
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: "\u89E3\u9501\u9875"
|
m_Name: "\u89E3\u9501\u9875"
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@ -11294,6 +11326,62 @@ MonoBehaviour:
|
|||||||
passwordInput: {fileID: 8983408738872222442}
|
passwordInput: {fileID: 8983408738872222442}
|
||||||
errorText: {fileID: 4491243043907793146}
|
errorText: {fileID: 4491243043907793146}
|
||||||
plane: {fileID: 2474256133367177989}
|
plane: {fileID: 2474256133367177989}
|
||||||
|
--- !u!114 &2879602480493971984
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5883796059177318917}
|
||||||
|
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: 737337850497317553}
|
||||||
|
m_OnClick:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls:
|
||||||
|
- m_Target: {fileID: 5883796059177318917}
|
||||||
|
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
|
||||||
|
m_MethodName: SetActive
|
||||||
|
m_Mode: 6
|
||||||
|
m_Arguments:
|
||||||
|
m_ObjectArgument: {fileID: 0}
|
||||||
|
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
|
||||||
|
m_IntArgument: 0
|
||||||
|
m_FloatArgument: 0
|
||||||
|
m_StringArgument:
|
||||||
|
m_BoolArgument: 0
|
||||||
|
m_CallState: 2
|
||||||
--- !u!1 &5909758653104010581
|
--- !u!1 &5909758653104010581
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -16437,8 +16525,8 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0}
|
m_AnchorMin: {x: 0.5, y: 0}
|
||||||
m_AnchorMax: {x: 0.5, y: 0}
|
m_AnchorMax: {x: 0.5, y: 0}
|
||||||
m_AnchoredPosition: {x: -15, y: -3.0199966}
|
m_AnchoredPosition: {x: -30, y: 3}
|
||||||
m_SizeDelta: {x: 626.2999, y: 32}
|
m_SizeDelta: {x: 625, y: 40}
|
||||||
m_Pivot: {x: 0.5, y: 1}
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
--- !u!222 &887070909065390951
|
--- !u!222 &887070909065390951
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
|
|||||||
@ -345,7 +345,7 @@ namespace Kill.UI.Pages
|
|||||||
restoreSettingsTips[2].gameObject.SetActive(true);
|
restoreSettingsTips[2].gameObject.SetActive(true);
|
||||||
restoreSettingsTips[0].gameObject.SetActive(false);
|
restoreSettingsTips[0].gameObject.SetActive(false);
|
||||||
restoreSettingsTips[1].gameObject.SetActive(false);
|
restoreSettingsTips[1].gameObject.SetActive(false);
|
||||||
restoreSettingsTips[2].GetComponent<WindowTipCtrl>().Init(ResetDeviceAsync, null);
|
restoreSettingsTips[2].GetComponent<WindowTipCtrl>().Init(ResetDeviceBluetooth, null);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 验证密码
|
/// 验证密码
|
||||||
@ -401,11 +401,11 @@ namespace Kill.UI.Pages
|
|||||||
Debug.Log(data.code);
|
Debug.Log(data.code);
|
||||||
if (data.code == 200)
|
if (data.code == 200)
|
||||||
{
|
{
|
||||||
ResetDeviceBluetooth();
|
StartCoroutine(BackToHomePage());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ToastUI.Show("100036");
|
ToastUI.Show("100302");
|
||||||
}
|
}
|
||||||
LoadingUI.Hide();
|
LoadingUI.Hide();
|
||||||
|
|
||||||
@ -423,26 +423,44 @@ namespace Kill.UI.Pages
|
|||||||
ToastUI.Show("100036");
|
ToastUI.Show("100036");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
private void ResetDeviceBluetooth()
|
private async void ResetDeviceBluetooth()
|
||||||
{
|
{
|
||||||
LoadingUI.Show();
|
LoadingUI.Show();
|
||||||
BLECommunicationManager.Instance.FactoryReset((success) =>
|
if (DataManager.Instance.hasWifi && !DataManager.Instance.hasBluetooth)
|
||||||
{
|
{
|
||||||
Loom.QueueOnMainThread(() =>
|
bool success = await HomePageCtrl.Instance.SendBleCommandByWifiAsync(BLEConstants.CMD_FACTORY_RESET, new byte[] { 0x01 });
|
||||||
|
if (success)
|
||||||
{
|
{
|
||||||
if (success)
|
LoadingUI.Hide();
|
||||||
|
ResetDeviceAsync();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
LoadingUI.Hide();
|
||||||
|
ToastUI.Show("100302");
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if (DataManager.Instance.hasBluetooth)
|
||||||
|
{
|
||||||
|
BLECommunicationManager.Instance.FactoryReset((success) =>
|
||||||
|
{
|
||||||
|
Loom.QueueOnMainThread(() =>
|
||||||
{
|
{
|
||||||
BluetoothManager.Instance.ChangeAimMac("");
|
if (success)
|
||||||
BluetoothManager.Instance.Disconnect();
|
{
|
||||||
StartCoroutine(BackToHomePage());
|
BluetoothManager.Instance.ChangeAimMac("");
|
||||||
}
|
BluetoothManager.Instance.Disconnect();
|
||||||
else
|
ResetDeviceAsync();
|
||||||
{
|
}
|
||||||
LoadingUI.Hide();
|
else
|
||||||
ToastUI.Show("100068");
|
{
|
||||||
}
|
LoadingUI.Hide();
|
||||||
|
ToastUI.Show("100302");
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
public void OpenShareDevicePage()
|
public void OpenShareDevicePage()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -16,13 +16,19 @@ namespace Kill.UI.Pages
|
|||||||
public InputField passwordInput;
|
public InputField passwordInput;
|
||||||
public Text errorText;
|
public Text errorText;
|
||||||
public GameObject plane;
|
public GameObject plane;
|
||||||
|
public void OnEnable()
|
||||||
|
{
|
||||||
|
errorText.text="";
|
||||||
|
}
|
||||||
public async void OnConfirm()
|
public async void OnConfirm()
|
||||||
{
|
{
|
||||||
|
errorText.text="";
|
||||||
LoadingUI.Show();
|
LoadingUI.Show();
|
||||||
string password = passwordInput != null ? passwordInput.text : "";
|
string password = passwordInput != null ? passwordInput.text : "";
|
||||||
if (string.IsNullOrEmpty(password))
|
if (string.IsNullOrEmpty(password))
|
||||||
{
|
{
|
||||||
errorText.text = LanguageManager.Instance.GetLanguage("100040");
|
errorText.text = LanguageManager.Instance.GetLanguage("100040");
|
||||||
|
LoadingUI.Hide();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
PasswordRequest requestData=new PasswordRequest
|
PasswordRequest requestData=new PasswordRequest
|
||||||
|
|||||||
@ -847,8 +847,10 @@ namespace Kill.UI.Pages
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
hasWifi=await GetDeviceOnlineStatus();
|
hasWifi=await GetDeviceOnlineStatus();
|
||||||
hasBluetooth = BluetoothManager.Instance.ChangeAimMac(selectedDevice.ble_mac);
|
DataManager.Instance.hasWifi=hasWifi;
|
||||||
|
|
||||||
|
hasBluetooth = BluetoothManager.Instance.ChangeAimMac(selectedDevice.ble_mac);
|
||||||
|
DataManager.Instance.hasBluetooth=hasBluetooth;
|
||||||
selectDeviceButton.GetComponentInChildren<Text>().text = selectedDevice.device_name;
|
selectDeviceButton.GetComponentInChildren<Text>().text = selectedDevice.device_name;
|
||||||
selectDeviceButton.gameObject.SetActive(true);
|
selectDeviceButton.gameObject.SetActive(true);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user