Exemplo n.º 1
0
    private void ParseVersionFile(string content, Dictionary<string, LOCALFileInfo> dict)
    {
        if (content == null || content.Length == 0)
        {
            return;
        }
        string[] items = content.Split(new char[] { '\n' });
        foreach (string item in items)
        {
            if (item.IndexOf("ver:") == 0)
            {
                continue;
            }

            string[] info = item.Split(new char[] { ',' });
            if (info != null && info.Length == 3)
            {
                LOCALFileInfo fileinfo = new LOCALFileInfo();
                fileinfo.md5 = info[1];
                fileinfo.length = info[2];
                dict.Add(info[0], fileinfo);
            }
        }
    }
Exemplo n.º 2
0
    private void CompareVersion()
    {
        foreach (var version in ServerResVersion)
        {
            string fileName = version.Key;
            string serverMd5 = version.Value.md5;
            //新增的资源
            if (!LocalResVersion.ContainsKey(fileName))
            {
                NeedDownFiles.Add(version.Key, version.Value);
            }
            else
            {
                //需要替换的资源
                //string localMd5;
                LOCALFileInfo fileinfo = new LOCALFileInfo();
                LocalResVersion.TryGetValue(fileName, out fileinfo);
                if (!serverMd5.Equals(fileinfo.md5))
                {
                    NeedDownFiles.Add(version.Key, version.Value);
                }
            }
        }
        //本次有更新,同时更新本地的version.txt
        NeedUpdateLocalVersionFile = NeedDownFiles.Count > 0;

        //UI显示
        if(NeedUpdateLocalVersionFile)
        {
            _FileCount = NeedDownFiles.Count;
            _TempFileCount = _FileCount;
            _FileSize = GetNeedDownFilesSize();
            _TempFileSize = _FileSize;
            GameObject obj = GameObject.Find("UpdateSrc");
            obj.GetComponent<UpdateSrc>().updateSrcUI.GetComponent<UpdateSrcUI>().SetUpdateInfo("本次需更新" + _FileCount.ToString() + "个文件,共计" + _FileSize.ToString() + "M,请在wifi网络下点击更新按钮");
            obj.GetComponent<UpdateSrc>().updateSrcUI.GetComponent<UpdateSrcUI>().SetButtonActive(true);            
        }
        else
        {
            GameObject obj = GameObject.Find("UpdateSrc");
            obj.GetComponent<UpdateSrc>().updateSrcUI.GetComponent<UpdateSrcUI>().SetUpdateInfo("检查版本文件内容完毕,开始进入游戏");
            //更新完成
            _UpdateComplete = true; 
        }
        
    }