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类的方法属性与方法属性的动态绑定代码详解

动态语言与静态语言有很多不同,最大的特性之一就是可以实现动态的对类和实例进行修改,在Python中,我们创建了一个类后可以对实例和类绑定心的方法或者属性,实现动态绑定。 最近在学习pyt...

在python中实现对list求和及求积

如下所示: # the basic way s = 0 for x in range(10): s += x # the right way s = sum(range(10))...

Python实现邮件的批量发送的示例代码

1 发送文本信息 '''加密发送文本邮件''' def sendEmail(from_addr,password,to_addr,smtp_server): try: msg...

Python生成随机密码

本人  python新手,使用的环境是python2.7,勿喷 复制代码 代码如下: # -*- coding:utf8 -*- import random import st...

Python绘制频率分布直方图的示例

Python绘制频率分布直方图的示例

项目中在前期经常要看下数据的分布情况,这对于探究数据规律非常有用。概率分布表示样本数据的模样,长的好不好看如果有图像展示出来就非常完美了,使用Python绘制频率分布直方图非常简洁,因为...