using UnityEngine; using System; using System.Xml; using System.Collections.Generic; using ThinkingSDK.PC.Config; using ThinkingSDK.PC.Constant; using ThinkingSDK.PC.Storage; namespace ThinkingSDK.PC.Utils { public class ThinkingSDKUtil { private static Dictionary deviceInfo = null; public ThinkingSDKUtil() { } public static List DisPresetProperties = ThinkingSDKUtil.GetDisPresetProperties(); /* * Check if the URL is valid */ public static bool IsValiadURL(string url) { return !(url == null || url.Length == 0 || !url.Contains("http") || !url.Contains("https")); } /* * Check if the string is empty */ public static bool IsEmptyString(string str) { return (str == null || str.Length == 0); } public static Dictionary DeviceInfo() { if (deviceInfo == null) { deviceInfo = new Dictionary(); deviceInfo[ThinkingSDKConstant.DEVICE_ID] = ThinkingSDKDeviceInfo.DeviceID(); //deviceInfo[ThinkingSDKConstant.CARRIER] = ThinkingSDKDeviceInfo.Carrier(); //PC端不采集 deviceInfo[ThinkingSDKConstant.OS] = ThinkingSDKDeviceInfo.OS(); deviceInfo[ThinkingSDKConstant.OS_VERSION] = ThinkingSDKDeviceInfo.OSVersion(); deviceInfo[ThinkingSDKConstant.SCREEN_HEIGHT] = ThinkingSDKDeviceInfo.ScreenHeight(); deviceInfo[ThinkingSDKConstant.SCREEN_WIDTH] = ThinkingSDKDeviceInfo.ScreenWidth(); deviceInfo[ThinkingSDKConstant.MANUFACTURE] = ThinkingSDKDeviceInfo.Manufacture(); deviceInfo[ThinkingSDKConstant.DEVICE_MODEL] = ThinkingSDKDeviceInfo.DeviceModel(); deviceInfo[ThinkingSDKConstant.APP_VERSION] = ThinkingSDKAppInfo.AppVersion(); deviceInfo[ThinkingSDKConstant.APP_BUNDLEID] = ThinkingSDKAppInfo.AppIdentifier(); deviceInfo[ThinkingSDKConstant.LIB] = ThinkingSDKAppInfo.LibName(); deviceInfo[ThinkingSDKConstant.LIB_VERSION] = ThinkingSDKAppInfo.LibVersion(); } deviceInfo[ThinkingSDKConstant.SYSTEM_LANGUAGE] = ThinkingSDKDeviceInfo.MachineLanguage(); deviceInfo[ThinkingSDKConstant.NETWORK_TYPE] = ThinkingSDKDeviceInfo.NetworkType(); return deviceInfo; } // Get disabled preset properties private static List GetDisPresetProperties() { List properties = new List(); TextAsset textAsset = Resources.Load("ta_public_config"); if (textAsset != null && textAsset.text != null) { XmlDocument xmlDoc = new XmlDocument(); // xmlDoc.Load(srcPath); xmlDoc.LoadXml(textAsset.text); XmlNode root = xmlDoc.SelectSingleNode("resources"); for (int i=0; i originalDic, Dictionary subDic) { if (originalDic != subDic) { foreach (KeyValuePair kv in subDic) { originalDic[kv.Key] = kv.Value; } } } //get timestamp public static long GetTimeStamp() { TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); return Convert.ToInt64(ts.TotalMilliseconds); } } }