diff --git a/bin/templates/cordova/ApplicationInfo/ApplicationInfo.class b/bin/templates/cordova/ApplicationInfo/ApplicationInfo.class new file mode 100644 index 00000000..6b854f7d Binary files /dev/null and b/bin/templates/cordova/ApplicationInfo/ApplicationInfo.class differ diff --git a/bin/templates/cordova/ApplicationInfo/ApplicationInfo.java b/bin/templates/cordova/ApplicationInfo/ApplicationInfo.java new file mode 100644 index 00000000..9a663217 --- /dev/null +++ b/bin/templates/cordova/ApplicationInfo/ApplicationInfo.java @@ -0,0 +1,44 @@ +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import org.xml.sax.SAXException; +import java.io.IOException; + +public class ApplicationInfo { + private static void parseAndroidManifest(String path) { + // System.out.println(path); + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + Document dom; + try { + DocumentBuilder db = dbf.newDocumentBuilder(); + dom = db.parse(path); + + // getting package information + Element manifest = dom.getDocumentElement(); + String pakkage = manifest.getAttribute("package"); + + // getting activity name + String activity = ((Element)dom.getElementsByTagName("activity").item(0)).getAttribute("android:name"); + System.out.println(String.format("%s/%s.%s", pakkage, pakkage, activity)); + } catch(ParserConfigurationException pce) { + pce.printStackTrace(); + } catch(SAXException se) { + se.printStackTrace(); + } catch(IOException ioe) { + ioe.printStackTrace(); + } + + } + + public static void main(String[] args) { + String path; + if(args.length > 0) { + path = args[0]; + } else { + path = System.getProperty("user.dir") + "/../AndroidManifest.xml"; + } + parseAndroidManifest(path); + } +} diff --git a/bin/templates/cordova/ApplicationInfo/manifest.txt b/bin/templates/cordova/ApplicationInfo/manifest.txt new file mode 100644 index 00000000..7d77999c --- /dev/null +++ b/bin/templates/cordova/ApplicationInfo/manifest.txt @@ -0,0 +1 @@ +Main-Class: ApplicationInfo