Exemplo n.º 1
0
        private void CheckVersion(string text)
        {
            //远程版本文件
            Version remoteVersion = VersionHelp.JsonForVersion(text);

            if (remoteVersion == null)
            {
                _onCompleted(VersionResType.Unusual, null);
                return;
            }

            //获取本地版本文件
            Version localVersion = VersionHelp.GetLocalVersionForApp();

            //版本是否一致(具体对比规则自定义)
            if (localVersion != null && localVersion.version != remoteVersion.version)
            {
                _onCompleted(VersionResType.Different, null);
                return;
            }
            //更新本地版本文件

            VersionHelp.WriteLocalVersionFile(remoteVersion);
            _onCompleted(VersionResType.DownloadSuccess, remoteVersion);
        }
Exemplo n.º 2
0
        private void DownloadCompleted(WWW www)
        {
            if (www == null)
            {
                if (failCount == GameConfig.download_Fail_Count)
                {
                    if (callback != null)
                    {
                        callback(null);
                    }
                    return;
                }
                Download(GameConfig.download_Fail_Retry_Delay);
                failCount++;
                return;
            }
            //检查是否需要重新下载游戏
            Version remote_version = VersionHelp.JsonForVersion(www.text);

            if (remote_version == null)
            {
                Debug.LogError("version.txt 解析失败");
                return;
            }
            Version local_version = VersionHelp.GetLocalVersionForApp();

            if (local_version != null && local_version.version != remote_version.version)
            {
                //第一次安装游戏
                Debug.Log("请重新下载游戏");
                return;
            }
            //更新本地版本文件
            VersionHelp.WriteLocalVersionFile(remote_version);
            if (callback != null)
            {
                callback(remote_version);
            }
        }