private void RequestVersion()
    {
        string deviceId            = SystemInfo.deviceUniqueIdentifier;
        string deviceName          = SystemInfo.deviceName;
        string deviceModel         = SystemInfo.deviceModel;
        string processorType       = SystemInfo.processorType;
        string processorCount      = SystemInfo.processorCount.ToString();
        string memorySize          = SystemInfo.systemMemorySize.ToString();
        string operatingSystem     = SystemInfo.operatingSystem;
        string iOSGeneration       = string.Empty;
        string iOSSystemVersion    = string.Empty;
        string iOSVendorIdentifier = string.Empty;

#if UNITY_IOS && !UNITY_EDITOR
        iOSGeneration       = UnityEngine.iOS.Device.generation.ToString();
        iOSSystemVersion    = UnityEngine.iOS.Device.systemVersion;
        iOSVendorIdentifier = UnityEngine.iOS.Device.vendorIdentifier ?? string.Empty;
#endif
        string gameVersion       = GameEntry.Base.GameVersion;
        string platform          = Application.platform.ToString();
        string language          = GameEntry.Localization.Language.ToString();
        string unityVersion      = Application.unityVersion;
        string installMode       = Application.installMode.ToString();
        string sandboxType       = Application.sandboxType.ToString();
        string screenWidth       = Screen.width.ToString();
        string screenHeight      = Screen.height.ToString();
        string screenDpi         = Screen.dpi.ToString();
        string screenOrientation = Screen.orientation.ToString();
        string screenResolution  = string.Format("{0} x {1} @ {2}Hz", Screen.currentResolution.width.ToString(), Screen.currentResolution.height.ToString(), Screen.currentResolution.refreshRate.ToString());
        string useWifi           = (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork).ToString();

        WWWForm wwwForm = new WWWForm();
        wwwForm.AddField("DeviceId", WebUtility.EscapeString(deviceId));
        wwwForm.AddField("DeviceName", WebUtility.EscapeString(deviceName));
        wwwForm.AddField("DeviceModel", WebUtility.EscapeString(deviceModel));
        wwwForm.AddField("ProcessorType", WebUtility.EscapeString(processorType));
        wwwForm.AddField("ProcessorCount", WebUtility.EscapeString(processorCount));
        wwwForm.AddField("MemorySize", WebUtility.EscapeString(memorySize));
        wwwForm.AddField("OperatingSystem", WebUtility.EscapeString(operatingSystem));
        wwwForm.AddField("IOSGeneration", WebUtility.EscapeString(iOSGeneration));
        wwwForm.AddField("IOSSystemVersion", WebUtility.EscapeString(iOSSystemVersion));
        wwwForm.AddField("IOSVendorIdentifier", WebUtility.EscapeString(iOSVendorIdentifier));
        wwwForm.AddField("GameVersion", WebUtility.EscapeString(gameVersion));
        wwwForm.AddField("Platform", WebUtility.EscapeString(platform));
        wwwForm.AddField("Language", WebUtility.EscapeString(language));
        wwwForm.AddField("UnityVersion", WebUtility.EscapeString(unityVersion));
        wwwForm.AddField("InstallMode", WebUtility.EscapeString(installMode));
        wwwForm.AddField("SandboxType", WebUtility.EscapeString(sandboxType));
        wwwForm.AddField("ScreenWidth", WebUtility.EscapeString(screenWidth));
        wwwForm.AddField("ScreenHeight", WebUtility.EscapeString(screenHeight));
        wwwForm.AddField("ScreenDPI", WebUtility.EscapeString(screenDpi));
        wwwForm.AddField("ScreenOrientation", WebUtility.EscapeString(screenOrientation));
        wwwForm.AddField("ScreenResolution", WebUtility.EscapeString(screenResolution));
        wwwForm.AddField("UseWifi", WebUtility.EscapeString(useWifi));

        GameEntry.WebRequest.AddWebRequest(GameEntry.BuiltinData.BuildInfo.CheckVersionUrl, wwwForm, this);
    }