コード例 #1
0
        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;
        }
コード例 #2
0
 private static string WindowsOsNumberToName(string version)
 {
     return(WindowsVersions.GetExtendedInfo(version));
 }