diff options
Diffstat (limited to 'examples/get_app_name.py')
-rw-r--r-- | examples/get_app_name.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/examples/get_app_name.py b/examples/get_app_name.py new file mode 100644 index 0000000..129d990 --- /dev/null +++ b/examples/get_app_name.py @@ -0,0 +1,22 @@ +""" +Usage: +python get_app_name.py /path/to/extracted/apk/dir +""" +import sys + +from pyaxmlparser.arscparser import ARSCParser +from pyaxmlparser.axmlprinter import AXMLPrinter + + +app_root = sys.argv[1] + +xml = AXMLPrinter(open("{}/AndroidManifest.xml".format(app_root), 'rb').read()).get_xml_obj() +rsc = ARSCParser(open("{}/resources.arsc".format(app_root), "rb").read()) + +app_name_hex = xml.getElementsByTagName("application")[0].getAttribute("android:label") +app_name = '0x' + app_name_hex[1:] +app_name = rsc.get_string( + rsc.get_packages_names()[0], + rsc.get_id(rsc.get_packages_names()[0], int(app_name, 0))[1] +) +print('App name is "{}"'.format(app_name[1])) |