package gueei.binding.gen; import java.io.File; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Task; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; public class RegisterApplicationTask extends Task { private File mDir; public void setDir(File dir) { mDir = dir; } private String mAppClassName; public void setAppClassName(String appClassName) { mAppClassName = appClassName; } @Override public void execute() throws BuildException { try { File file = new File(mDir, "AndroidManifest.xml"); Document doc = DocumentBuilderFactory.newInstance() .newDocumentBuilder() .parse(new File(mDir, "AndroidManifest.xml")); Element appNode = (Element) doc.getElementsByTagName("application").item(0); appNode.setAttribute("android:name", mAppClassName); TransformerFactory transformerFactory = TransformerFactory .newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(file); transformer.transform(source, result); log("Manifest <application> modified"); } catch (Exception e) { e.printStackTrace(); } } }