zt3ff3n 发表于 2022-6-15 19:10

unity场景的热更

打包场景ab包放服务器上,并在服务器生成txt配置文件,格式为 包名md5加密包大小。
热更时下载服务器上的配置文件,对比手机上的配置文件(如果没有 就下载过去并下载里面的ab包)。
如果配置文件有变化(包括文件的增加,或者存在的文件的更新看md5或者包大小),让用户去下载有变化的ab包!!!
//md5加密
private static string CalcMD5(string str)
    {
      byte[] buffer = Encoding.UTF8.GetBytes(str);
      using (MD5 md5 = MD5.Create())
      {
            byte[] md5Bytes = md5.ComputeHash(buffer);
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < md5Bytes.Length; i++)
            {
                sb.Append(md5Bytes.ToString("x2"));//X2时,生成字母大写MD5
            }
            return sb.ToString();
      }
    }

//获取文件大小
    private static long AbLength(string path,string name) {
      DirectoryInfo di = new DirectoryInfo(path);      
      FileInfo[] fiArr = di.GetFiles();
      for (int i = 0; i < fiArr.Length; i++)
      {
            if (fiArr.Name.Equals(name)) {
               returnfiArr.Length;
            }
      }
      return 0;
    }
页: [1]
查看完整版本: unity场景的热更