/// <summary> /// 这是卸载ab包 卸载一个 需要处理其依赖关系 /// </summary> /// <param name="abName"></param> public void DisposeBundle(string abName) { if (m_singleABDict.ContainsKey(abName)) { ABRelation relation = m_relationDict[abName]; List <string> def = relation.GetAllDependence(); for (int i = 0; i < def.Count; i++) { if (m_relationDict.ContainsKey(def[i])) { ABRelation temp = m_relationDict[def[i]]; if (temp.RemoveReference(abName)) { DisposeBundle(temp.GetABName()); } } } if (relation.GetAllReference().Count == 0) { m_singleABDict[abName].Dispose(); m_relationDict.Remove(abName); } } }