private static void DetectPlatfrom(this string userAgent, out FormFactor formFactor, out PlarformType plarformType, out string osVersion) { var theData = userAgent.ToLower().SubstringBetween('(', ')').Split(';'); foreach (var s in theData) { if (s.StartsWith("series 60")) { plarformType = PlarformType.Symbian; formFactor = FormFactor.Mobile; osVersion = null; return; } if (s.StartsWith("android")) { plarformType = PlarformType.Android; formFactor = FormFactor.Mobile; osVersion = null; return; } if (s.StartsWith("blackberry")) { plarformType = PlarformType.BlackBerry; formFactor = FormFactor.Mobile; osVersion = null; return; } if (s.StartsWith("iphone")) { plarformType = PlarformType.Apple; formFactor = FormFactor.Mobile; osVersion = null; return; } if (s.StartsWith("ipad")) { plarformType = PlarformType.Apple; formFactor = FormFactor.Tablet; osVersion = null; return; } if (s.StartsWith("windows nt")) { plarformType = PlarformType.Windows; formFactor = FormFactor.Desktop; osVersion = WindowsVersions.GetExtendedInfo(s.SubstringFromString("windows nt").Trim()); return; } if (s.StartsWith("windows mobile")) { plarformType = PlarformType.Windows; formFactor = FormFactor.Mobile; osVersion = null; return; } } plarformType = PlarformType.Unknown; formFactor = FormFactor.Unknown; osVersion = null; }
private static string WindowsOsNumberToName(string version) { return(WindowsVersions.GetExtendedInfo(version)); }