python如何获取apk的packagename和activity

yipeiwu_com6年前Python基础

这篇文章主要介绍了python如何获取apk的packagename和activity,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

实现代码如下:

# 找出packagename和activity
import os
import re
class packagename_activity:
  def get_packagename(self, path):
    aapt = []
    os.system(f'aapt dump badging {path}> ../xc_logs/AaptLog.txt')
    with open('../xc_logs/AaptLog.txt', 'rb') as f:
      p1 = "package: name='(.+?)'"
      results1 = re.finditer(pattern=p1, string=f.readline().decode('utf-8'))
      for r in results1:
        packagename = r.group(1)
        aapt.append(packagename)
      p2 = "launchable-activity: name='(.+?)'"
      st = str(f.readlines())
      results2 = re.findall(p2, st)
      activity = results2[0]
      aapt.append(activity)
    return aapt
if __name__ == '__main__':
  a=packagename_activity()
  b=a.get_packagename('../xc_apk/wangyiyunyinyue.apk')
  print(b)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python with关键字,上下文管理器,@contextmanager文件操作示例

本文实例讲述了Python with关键字,上下文管理器,@contextmanager文件操作。分享给大家供大家参考,具体如下: demo.py(with 打开文件): # ope...

Python中IP地址处理IPy模块的方法

安装 先下载源码,地址:ps://pypi.python.org/pypi/IPy/">https://pypi.python.org/pypi/IPy/ ,然后解压后使用命令py...

Pytorch加载部分预训练模型的参数实例

前言 自从从深度学习框架caffe转到Pytorch之后,感觉Pytorch的优点妙不可言,各种设计简洁,方便研究网络结构修改,容易上手,比TensorFlow的臃肿好多了。对于深度学习...

Python下的twisted框架入门指引

什么是twisted? twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其他应用层协议,比如HTTP,SMTP,NNTM,IR...

Python的dict字典结构操作方法学习笔记

一.字典的基本方法 1.新建字典 1)、建立一个空的字典 >>> dict1={} >>> dict2=dict() >>>...