python如何获取apk的packagename和activity

yipeiwu_com5年前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读取TXT每行,并存到LIST中的方法

python读取TXT每行,并存到LIST中的方法

文本如图: Python: import sys result=[] with open('accounts.txt','r') as f: for line in f: re...

python处理两种分隔符的数据集方法

python处理两种分隔符的数据集方法

在做机器学习的时候,遇到这样一个数据集... 一共399行10列, 1-9列是用不定长度的空格分割, 第9-10列之间用'\t'分割, 前九列都是数值类型,其中第三列有若干个'?...

python如何重载模块实例解析

本文首先介绍了Python中的模块的概念,谈到了一个模块往往由多个模块组成,然后通过具体实例,分析了模块重载的相关内容,具体介绍如下。 模块是Python程序架构的一个核心概念,较大的程...

Python 多线程实例详解

Python 多线程实例详解 多线程通常是新开一个后台线程去处理比较耗时的操作,Python做后台线程处理也是很简单的,今天从官方文档中找到了一个Demo. 实例代码: import...

python 随机打乱 图片和对应的标签方法

如下所示: # -*- coding: utf-8 -*- import os import numpy as np import pandas as pd import h5p...