Android 在哪里存储动态模块 APK?
Where does Android store dynamic module APKs?
我正在使用 dynamic modules. Let assume there is one base module (base
) and one dynamic module (feature
). I installed the app using Android Studio (or bundle tool) 开发 android 应用程序,并且 base
和 feature
apks 都安装并位于
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/base.apk
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/feature.apk
我通过 运行ning
找到了这些地址
adb shell pm path example.dynapp
然后我将应用程序包上传到 Play 管理中心并从 Google Play 安装到我的 phone。接下来,我在使用该应用程序时下载了 feature
模块。但是,在我 运行 adb shell pm path example.dynapp
之后它只显示 base
apk 而没有 feature
apk 的迹象。顺便一提,
feature
模块似乎已安装,因为 feature
模块的功能正常工作。
我的问题是 Google Play 在哪里保存这些动态加载的模块(或 APK)。有什么方法可以使用 adb
(例如 adb pull
)访问它们。
它存储在应用程序目录中。
像这样:
/data/data/com.myapp.mypackage/files/splitcompat/1400191/verified-splits/kotlin.config.xxhdpi.apk
显然,1400191 发生了变化。
为了找到您下载的 apk 文件,您可能可以 运行 在设备上使用 linux 命令来找到它们:
find / -name *.xxhdpi.apk
甚至更好:
find /data/data/com.myapp.mypackage -name *.xxhdpi.apk
注意:您需要运行这些在'adb shell'之后,之后,您需要运行作为您的申请。
如果您有 root 设备,那么在 'adb shell'.
之后输入 'su' 就足够了
我正在使用 dynamic modules. Let assume there is one base module (base
) and one dynamic module (feature
). I installed the app using Android Studio (or bundle tool) 开发 android 应用程序,并且 base
和 feature
apks 都安装并位于
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/base.apk
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/feature.apk
我通过 运行ning
找到了这些地址adb shell pm path example.dynapp
然后我将应用程序包上传到 Play 管理中心并从 Google Play 安装到我的 phone。接下来,我在使用该应用程序时下载了 feature
模块。但是,在我 运行 adb shell pm path example.dynapp
之后它只显示 base
apk 而没有 feature
apk 的迹象。顺便一提,
feature
模块似乎已安装,因为 feature
模块的功能正常工作。
我的问题是 Google Play 在哪里保存这些动态加载的模块(或 APK)。有什么方法可以使用 adb
(例如 adb pull
)访问它们。
它存储在应用程序目录中。
像这样:
/data/data/com.myapp.mypackage/files/splitcompat/1400191/verified-splits/kotlin.config.xxhdpi.apk
显然,1400191 发生了变化。
为了找到您下载的 apk 文件,您可能可以 运行 在设备上使用 linux 命令来找到它们:
find / -name *.xxhdpi.apk
甚至更好:
find /data/data/com.myapp.mypackage -name *.xxhdpi.apk
注意:您需要运行这些在'adb shell'之后,之后,您需要运行作为您的申请。 如果您有 root 设备,那么在 'adb shell'.
之后输入 'su' 就足够了