public static void ConvertToLinkProjectXamarin_droid(SolutionMx slnMx, string srcProject, string autoGenFolder, string targetFramework, bool removeOriginalSrcProject) { SimpleXamarin_MobileProj simpleXamarinProj = new SimpleXamarin_MobileProj(MobileProjPlatform.Android); XmlDocument xmldoc = new XmlDocument(); xmldoc.Load(srcProject); XmlElement rootDoc = xmldoc.DocumentElement; List <XmlElement> compileNodes = SelectCompileNodes(xmldoc.DocumentElement); string onlyFileName = Path.GetFileName(srcProject); string onlyFilenameNoExtension = System.IO.Path.GetFileNameWithoutExtension(onlyFileName); string saveFileName = slnMx.SolutionDir + "\\" + autoGenFolder + "\\" + onlyFileName; string targetSaveFolder = slnMx.SolutionDir + "\\" + autoGenFolder; //TODO: review here, //temp fix simpleXamarinProj.RootNamespace = simpleXamarinProj.AssemblyName = onlyFilenameNoExtension + ".Droid"; //simpleXamarinProj.DefineConstants = ";PIXEL_FARM; PIXEL_FARM_NET20; NET20; MINIMAL; GLES; WIN32; GL_ENABLE; SHARPZIPLIB;NETSTANDARD;"; simpleXamarinProj.DefineConstants = ";PIXEL_FARM; PIXEL_FARM_NET20; NET20; GL_ENABLE; SHARPZIPLIB;NETSTANDARD;"; foreach (XmlElement elem in compileNodes) { XmlAttribute includeAttr = elem.GetAttributeNode("Include"); SimpleCompileNode compileNode = new SimpleCompileNode(); compileNode.Include = slnMx.BuildPathRelativeToOther(targetSaveFolder, SolutionMx.CombineRelativePath(includeAttr.Value), out string leftPart, out string rightPart); compileNode.Link = rightPart; simpleXamarinProj.AddCompileNode(compileNode); } string targetSaveDir = System.IO.Path.GetDirectoryName(saveFileName); if (!Directory.Exists(targetSaveDir)) { Directory.CreateDirectory(targetSaveDir); } simpleXamarinProj.Save(saveFileName); //--- File.Copy("AndroidManifest.xml", targetSaveFolder + "/AndroidManifest.xml", true); }
public void AddCompileNode(SimpleCompileNode compileNode) { _compileNodes.Add(compileNode); }