예제 #1
0
        // Deserialize a JSON stream to a User object.
        public List <YAppRelease> CheckAllNewRelease()
        {
            int curVersion = _svnVersion;

            if (curVersion < _appInterface.GetBuildNumberToIgnoreSettings())
            {
                curVersion = _appInterface.GetBuildNumberToIgnoreSettings();
            }

            string                     appname      = _appName.Replace("-", "");
            string                     request      = String.Format("{0}/FR/common/getLastFirmwareLink.php?app={1}&version={2}&platform={3}", SERVER_NAME, appname, curVersion, _platform);
            string                     json         = HTTPRequest(request);
            List <YAppRelease>         newReleases  = new List <YAppRelease>();
            MemoryStream               ms           = new MemoryStream(Encoding.Unicode.GetBytes("{\"available\":" + json + "}"));
            DataContractJsonSerializer deserializer = new DataContractJsonSerializer(typeof(JsonRootobject));
            JsonRootobject             root         = (JsonRootobject)deserializer.ReadObject(ms);

            foreach (JsonAppRelease item in root.available)
            {
                newReleases.Add(new YAppRelease {
                    version = Int32.Parse(item.version), link = item.link, date = item.date, what = item.what
                });
            }
            ms.Close();
            return(newReleases);
        }