Issue
I'm working on an android app with 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) and both base and feature apks were installed and located in
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/base.apk
/data/app/example.dynapp--Gn1-FdAo0qV-8Y8Q5qb7g==/feature.apk
I found these addresses by running
adb shell pm path example.dynapp
Then I uploaded the app bundle on Play Console and installed it from Google Play on my phone. Next, I downloaded the feature module when I was using the app. However, after I run adb shell pm path example.dynapp it only shows the base apk and there is no sign for feature apk. By the way,
it seems the feature module is installed since the functionality of feature module works correctly.
My question is where does Google Play keep these dynamic loaded modules (or APKs). And is there any way to access them using adb (such as adb pull).
Solution
it stores it in application dir.
like this:
/data/data/com.myapp.mypackage/files/splitcompat/1400191/verified-splits/kotlin.config.xxhdpi.apk
obviously, 1400191 changes.
In order to locate your apk files which are downloaded, you could probably run the linux command on the device to find them:
find / -name *.xxhdpi.apk
or even better:
find /data/data/com.myapp.mypackage -name *.xxhdpi.apk
Note: you need to run these after 'adb shell', after that, you need to run as your application. If you have a rooted device, then typing 'su' will be sufficient after 'adb shell'.
Answered By - Caner Kaya
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.