| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using LitJson;
- using Unity.XR.PXR;
- using UnityEngine;
- namespace Unity.XR.PXR
- {
- public class WifiDisplayModelCallback : AndroidJavaProxy
- {
- public Action<List<WifiDisplayModel>> mCallback;
- public WifiDisplayModelCallback(Action<List<WifiDisplayModel>> callback) : base("com.picoxr.tobservice.interfaces.StringCallback")
- {
- mCallback = callback;
- }
- public void CallBack(string var1)
- {
- Debug.Log("ToBService WifiDisplayModelCallback 回调:" + var1);
- List<WifiDisplayModel> tmp = JsonToWifiDisplayModel(var1);
- PXR_EnterpriseTools.QueueOnMainThread(() =>
- {
- if (mCallback != null)
- {
- mCallback(tmp);
- }
- });
- }
-
- public List<WifiDisplayModel> JsonToWifiDisplayModel(string json)
- {
- if (string.IsNullOrEmpty(json))
- {
- return null;
- }
- List<WifiDisplayModel> ModelList = new List<WifiDisplayModel>();
- JsonData jsonData = JsonMapper.ToObject(json);
- IDictionary dictionary = jsonData as IDictionary;
- for (int i = 0; i < dictionary.Count; i++)
- {
- WifiDisplayModel model = new WifiDisplayModel();
- model.deviceAddress = jsonData[i]["deviceAddress"].ToString();
- model.deviceName = jsonData[i]["deviceName"].ToString();
- model.isAvailable = bool.Parse(jsonData[i]["isAvailable"].ToString());
- model.canConnect = bool.Parse(jsonData[i]["canConnect"].ToString());
- model.isRemembered = bool.Parse(jsonData[i]["isRemembered"].ToString());
- model.statusCode = int.Parse(jsonData[i]["statusCode"].ToString());
- model.status = jsonData[i]["status"].ToString();
- model.description = jsonData[i]["description"].ToString();
- ModelList.Add(model);
- }
- return ModelList;
- }
- }
- }
|