示例#1
0
 public bool equals(AssetInfoUnit unit)
 {
     if (_guid.Equals(unit._guid) && _md5_self.Equals(unit._md5_self) &&
         _md5_meta.Equals(unit._md5_meta) && _serializeFields.Equals(unit._serializeFields))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
示例#2
0
    /// <summary>
    /// 读取AssetBundleDepInfo.xml文件
    /// </summary>
    /// <param name="filename">文件路径</param>
    /// <returns>读取成功返回真</returns>
    public bool read(string filename)
    {
        if (File.Exists(filename) == false)
        {
            return(false);
        }
        _ABDepInfoDic.Clear();
        XmlDocument xmldoc = new XmlDocument();

        xmldoc.Load(filename);
        XmlNode rootElement = xmldoc.SelectSingleNode("AssetInfo");

        if (rootElement == null)
        {
            return(false);
        }
        XmlNodeList nodeList = rootElement.ChildNodes;

        foreach (XmlNode xn in nodeList)
        {
            AssetInfoUnit depInfoUnit = new AssetInfoUnit();
            foreach (XmlAttribute attr in xn.Attributes)
            {
                if (attr.Name.Equals("guid"))
                {
                    depInfoUnit._guid = attr.Value;
                }
                else if (attr.Name.Equals("md5_self"))
                {
                    depInfoUnit._md5_self = attr.Value;
                }
                else if (attr.Name.Equals("md5_meta"))
                {
                    depInfoUnit._md5_meta = attr.Value;
                }
                else if (attr.Name.Equals("serializeFields"))
                {
                    depInfoUnit._serializeFields = attr.Value;
                }
            }
            _ABDepInfoDic.Add(depInfoUnit._guid, depInfoUnit);
        }
        return(true);
    }
示例#3
0
 /// <summary>
 /// 通过文件guid和路径添加文件信息
 /// </summary>
 /// <param name="guid"></param>
 /// <param name="path"></param>
 public void add(string guid, string path)
 {
     if (_ABDepInfoDic.ContainsKey(guid))
     {
         return;
     }
     try
     {
         AssetInfoUnit infoUnit = new AssetInfoUnit();
         infoUnit._guid            = guid;
         infoUnit._md5_self        = RG_Utils.GetMD5HashFromFile(path);
         infoUnit._md5_meta        = RG_Utils.GetMD5HashFromFile(path + ".meta");
         infoUnit._serializeFields = getScriptSerializeFields(path);
         _ABDepInfoDic[guid]       = infoUnit;
     }
     catch
     {
         Debug.LogError("add error");
     }
 }
示例#4
0
 /// <summary>
 /// 增加文件信息
 /// </summary>
 /// <param name="guid">guid</param>
 /// <param name="infoUnit">信息内容</param>
 public void add(string guid, AssetInfoUnit infoUnit)
 {
     _ABDepInfoDic[guid] = infoUnit;
 }
示例#5
0
    /// <summary>
    /// 获取某文件信息
    /// </summary>
    /// <param name="guid">guid</param>
    /// <param name="infoUnit">信息内容</param>
    /// <returns>获取成功返回真</returns>
    public bool tryGetValueByPath(string path, out AssetInfoUnit infoUnit)
    {
        string guid = AssetDatabase.AssetPathToGUID(path);

        return(tryGetValue(guid, out infoUnit));
    }
示例#6
0
 /// <summary>
 /// 获取某文件信息
 /// </summary>
 /// <param name="guid">guid</param>
 /// <param name="infoUnit">信息内容</param>
 /// <returns>获取成功返回真</returns>
 public bool tryGetValue(string guid, out AssetInfoUnit infoUnit)
 {
     return(_ABDepInfoDic.TryGetValue(guid, out infoUnit));
 }