adb shell pm list packages无法列出所有软件包

5
在三星设备上,如果您在Galaxy Theme应用程序中安装了一些主题、图标包等,并执行adb shell pm list packages命令,则结果无法找到。有什么想法吗?我尝试过多个开关,但没有一个有效。
adb shell pm list packages | grep -i TZTY.xiyun.aodanimated
adb shell pm list packages TZTY.xiyun.aodanimated

然而,如果我运行这个命令,我可以看到它,甚至可以拉取apk文件。

adb.exe shell pm dump TZTY.xiyun.aodanimated

DUMP OF SERVICE package:
Key Set Manager:
  [TZTY.xiyun.aodanimated]
      Signing KeySets: 238

Packages:
  Package [TZTY.xiyun.aodanimated] (64ebec8):
    userId=10422
    pkg=Package{79bbb3c TZTY.xiyun.aodanimated}
    codePath=/data/app/TZTY.xiyun.aodanimated-aBJscSanQXAT_FH9qo7qPQ==
    resourcePath=/data/app/TZTY.xiyun.aodanimated-aBJscSanQXAT_FH9qo7qPQ==
    legacyNativeLibraryDir=/data/app/TZTY.xiyun.aodanimated-aBJscSanQXAT_FH9qo7qPQ==/lib
    primaryCpuAbi=null
    secondaryCpuAbi=null
    versionCode=17 minSdk=21 targetSdk=21
    versionName=2
    splits=[base]
    apkSigningVersion=1
    applicationInfo=ApplicationInfo{4585b61 TZTY.xiyun.aodanimated}
    flags=[ ALLOW_CLEAR_USER_DATA ]
    privateFlags=[ PRIVATE_FLAG_REQUEST_LEGACY_EXTERNAL_STORAGE ]
    dataDir=/data/user/0/TZTY.xiyun.aodanimated
    supportsScreens=[small, medium, large, xlarge, resizeable, anyDensity]
    usesLibraries:
      org.apache.http.legacy
    usesLibraryFiles:
      /system/framework/org.apache.http.legacy.jar
    timeStamp=2020-08-14 12:14:26
    firstInstallTime=2020-08-14 12:14:28
    lastUpdateTime=2020-08-14 12:14:28
    installerPackageName=com.samsung.android.themecenter
    signatures=PackageSignatures{37ca686 version:1, signatures:[9b1d38ac], past signatures:[]}
    installPermissionsFixed=true
    pkgFlags=[ ALLOW_CLEAR_USER_DATA ]
    requested permissions:
      com.samsung.android.permission.SAMSUNG_OVERLAY_AOD
    User 0: ceDataInode=632630 installed=true hidden=false suspended=false stopped=true notLaunched=true enabled=0 instant=false virtual=false
      lastDisabledCaller: com.samsung.android.themecenter
      runtime permissions:
    User 10: ceDataInode=0 installed=false hidden=false suspended=false stopped=true notLaunched=true enabled=0 instant=false virtual=false
      runtime permissions:

你好,你有找到提取三星主题或贴纸apk文件的方法吗?因为我也遇到了同样的问题。 - Murtaza
1个回答

6

要列出所有软件包,您可以使用dumpsys:

dumpsys package | grep "Package \["

该命令在我的手机上返回219个条目,而pm list packages只返回183个。

如果您只需要软件包名称:

dumpsys package | grep "Package \[" | cut -d "\[" -f2 | cut -d "\]" -f1


1
谢谢你的回答。你知道背后的原因吗?在我的情况下‘pm'返回了157个包,而‘dumpsys'返回了158个。我缺少的包是我最近通过adb安装的一个应用程序,尽管我不记得在以前的硬件/仿真器上看到过这个问题,所以我很想知道根本原因是什么。 - LLL
4
命令 pm list packages 仅列出已安装的第三方应用程序。默认情况下,使用参数 -3,仅列出第三方应用程序。命令 dumpsys 列出所有包括禁用的、系统和第三方应用程序。 - St0rm
Try "pm list packages -a" - JohnyTex
@JohnyTex,“pm list packages -a”命令无法显示已禁用的应用程序包。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接