首先,这类似于this question,但未得到妥善回答。
我正在尝试将我从设备构建的APK作为脚本的一部分。当我开始adb pull
时,我意识到我不知道我的APK在设备上的安装位置,因为清单有android:installLocation=preferExternal
。
首先,我试过
adb ls /system/app
但是我的APK没有列出。然后我试了
adb ls /mnt/sdcard -aR | grep -i "myappname"
但它没有任何回报。最后,我试过
adb ls / -aR | grep -i "myappname"
但我仍然一无所获。由于我的SD卡有空间,我认为我的APK安装在那里,但我没有看到它存在的证据。该应用程序运行正常,并显示在我的设备上的应用程序管理器中。我想在文件系统中查找APK的任何想法?我的设备没有植根或解锁,以防万一。
答案 0 :(得分:2)
找到解决方案:
adb shell pm list package -f
将列出所有应用的安装位置。
我的APK的安装位置恰好位于/data/app
,但是因为该目录
没有读取权限,它不会显示在adb shell ls
下。然而,实际的APK(/data/app/myappname.apk
)具有读取权限,可以通过adb pull /data/app/myappname.apk
获得。
同样,这些都不需要root(至少在我的Galaxy S3上)。