コード例 #1
0
    public void BeforeCheck(Action <bool> AsynResult, Action OnError)
    {
        //阻塞,直到超时问题解决
        var checkTimeout = new CheckTimeout();

        checkTimeout.AsynIsNetworkTimeout((success) =>
        {
            if (success)
            {
                DownloadMgr.Instance.AsynDownLoadText(SystemConfig.GetCfgInfoUrl(SystemConfig.VERSION_URL_KEY),
                                                      (serverVersion) =>
                {
                    if (File.Exists(SystemConfig.ServerVersionPath))    //增加本地版本检查
                    {
                        serverVersion = Utils.LoadFile(SystemConfig.ServerVersionPath);
                        LoggerHelper.Info("serverVersion exist:\n" + serverVersion);
                    }
                    ServerVersion = GetVersionInXML(serverVersion);
                    if (ServerVersion.IsDefault())
                    {
                        if (OnError != null)
                        {
                            OnError();
                        }
                        return;
                    }
                    Mogo.Util.LoggerHelper.Debug("服务器程序版本: " + ServerVersion.ProgramVersionInfo);
                    Mogo.Util.LoggerHelper.Debug("服务器资源版本: " + ServerVersion.ResouceVersionInfo);
                    Mogo.Util.LoggerHelper.Debug("服务器包列表: " + ServerVersion.PackageList);
                    Mogo.Util.LoggerHelper.Debug("服务器包地址: " + ServerVersion.PackageUrl);
                    Mogo.Util.LoggerHelper.Debug("服务器Apk地址: " + ServerVersion.ApkUrl);
                    Mogo.Util.LoggerHelper.Debug("服务器md5地址: " + ServerVersion.PackageMd5List);
                    var compareProgramVersion  = ServerVersion.ProgramVersionInfo.Compare(LocalVersion.ProgramVersionInfo) > 0;   //服务程序版本号比本地版本号大
                    var compareResourceVersion = ServerVersion.ResouceVersionInfo.Compare(LocalVersion.ResouceVersionInfo) > 0;   //服务器资源版本比本地高
                    AsynResult(compareProgramVersion || compareResourceVersion);
                },
                                                      OnError);
            }
            else
            {
                if (OnError != null)
                {
                    OnError();
                }
            }
        });
        //CheckNetworkTimeout();
        //var serverVersion = DownloadMgr.Instance.DownLoadText(SystemConfig.GetCfgInfoUrl(SystemConfig.VERSION_URL_KEY));
        //{
        //    ServerVersion = GetVersionInXML(serverVersion);
        //    Mogo.Util.LoggerHelper.Debug("服务器程序版本: " + ServerVersion.ProgramVersionInfo);
        //    Mogo.Util.LoggerHelper.Debug("服务器资源版本: " + ServerVersion.ResouceVersionInfo);
        //    Mogo.Util.LoggerHelper.Debug("服务器包列表: " + ServerVersion.PackageList);
        //    Mogo.Util.LoggerHelper.Debug("服务器包地址: " + ServerVersion.PackageUrl);
        //    Mogo.Util.LoggerHelper.Debug("服务器Apk地址: " + ServerVersion.ApkUrl);
        //    Mogo.Util.LoggerHelper.Debug("服务器md5地址: " + ServerVersion.PackageMd5List);
        //}
        //var compareProgramVersion = ServerVersion.ProgramVersionInfo.Compare(LocalVersion.ProgramVersionInfo) > 0;//服务程序版本号比本地版本号大
        //var compareResourceVersion = ServerVersion.ResouceVersionInfo.Compare(LocalVersion.ResouceVersionInfo) > 0;//服务器资源版本比本地高
        //return compareProgramVersion || compareResourceVersion;
    }