栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

一键获取Android系统内应用packageName及ActivityName

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

一键获取Android系统内应用packageName及ActivityName

def getPKGInfo():
    keyword = input("请输入您需要过滤的package关键字,多个关键字以逗号区分:")
    filterList = keyword.split(",")
    pkgList = []
    for item in filterList:
        pmStr = "pm list package |grep " + item
        out = d.shell(pmStr)
        pkglist1 = str(out).split("='")[1].split("',")[0].split("package:")[1:]
        pkgList.extend(pkglist1)
    # print(pkgList)

    pkgFile = open("./pkgInfoFile_PList.txt", mode="w+")
    actFile = open("./pkgInfoFile_AList.txt", mode="w+")
    packageNameList = []
    activityNameList = []
    # 过滤掉不具备Launcher属性的package
    for item in pkgList:
        launcherStr = "dumpsys package " + item.strip("\n") + " |grep LAUNCHER"
        out = d.shell(launcherStr)
        # 提取具有Launcher属性的package
        if str(out).find("LAUNCHER") != -1:
            packageName = item.strip("\n")
            packageNameList.append(packageName + "n")
            actStr = "dumpsys package " + item.strip("\n") + " |grep " + item.strip("\n")
            # 提取ActivityName
            out = d.shell(str(actStr))
            activityName = str(out).split("\n")[0].split(" ")[9]
            activityNameList.append(activityName + "n")
    pkgFile.writelines(packageNameList)
    actFile.writelines(activityNameList)
    pkgFile.flush()
    actFile.flush()
    pkgFile.close()
    actFile.close()

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/709730.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号