So I am creating this website for an app from Google Play and I am currently trying to find where it's storing the image files on my phone. I've tried to search it with FX file explorer and searched in /data/data and found the app but I'm not sure where to find the images. I know that some apps hide them as another file type so if anyone can help me with trying to get the images, the app is called PC Creator if you would like to try it yourself.

  • Does this answer your question? Where Android apps store data? Apr 22 '20 at 18:44
  • Welcome to Android Enthusiasts! It would help could you detail what images you are talking about – as the term is quite ambiguous: pictures a) contained in the app, b) downloaded, c) created by the app; d) AppImages in terms of a "bundled backup" of the app and its data; e-z) some other kind of image. As you didn't link the app, it's hard to see for oneself (you cannot expect potential answerers doing a web-search just to figure what you're asking ;)
    – Izzy
    Apr 23 '20 at 7:22

Images are contained in the app

If the images are not downloaded they are contained in the app respectively it's APK file. You can download the APK file from your device (some file explorers allow to do so) or you can download it from an external source like ApkMirror, ApkPure, ...

Once you have downloaded the APK file you can simply unzip the APK file and then manually browser the directory structure or use your favorite file serach to to identify images and other useful files.

If you want to "dig deeper" (e.g. for extracting some string resources or other resources that are not directly accessible as a file within the APK file) you can decompile the APK using a tool like ApkTool (note Apktool is a Java tool and there requires an installed Java-runtime - JRE):

apktool d <path to the exported APK file>

You will get a directory containing thousands of files, containing the code, XML resources and images contained in the app.

Alternatively you can use a GUI program like Jadx (also needs Java, there is a version available that has an integrated JRE, hence does not require to download and install a Java run-time).

Using Jadx you can browse the path Resources/res/drawable* to view and save a contained image of the app.

Images are downloaded

If the images are downloaded while the app is running the are usually stored in the private app-data directory in /data/data/<app packagename>. For more details on this topic see this question: Where Android apps store data?

To access this directory you need root permissions.

Searching for a specific file on-device especially if the file uses a wrong file extension or a different measure to hide it can be quite tedious. Therefore I would recommend to tar (tar is available on all Android devices by default) the whole directory, export it to a PC and there examine the content:

tar cvf /sdcard/app_data.tar /data/data/<app packagename>

Afterwards you can download the created tar file via adb (execute the command on your connected PC):

adb pull /sdcard/app_data.tar

As you are searching for images you may try to directly run photorecon the tar file. photorec does not care about file extensions it directly operates on the data, if the image is in a known format and not obfuscated on data level it will be able to find and extract it.

  • Apk files can be extracted using a zip explorer. Why would one need to decompile the app just to extract image files? Are they encoded too? Apr 23 '20 at 9:26
  • 2
    @IrfanLatif Of course you are absolutely right. Just unzipping is enough. Looks like I decompile Android apps way too often. For me decompiling became the standard for looking into an app.
    – Robert
    Apr 23 '20 at 10:45
  • As an addendum to your already excellent answer, I'd like to point out that file is usually able to guess common file types, as well.
    – Grimoire
    Apr 23 '20 at 10:54
  • 1
    @Grimoire correct. But carving can find out where a standard header begins, even if you prepend something to its beginning (not damaging the original header obviously). file utility depends on the existence of a FILE. It looks for signatures at fixed offsets only, won't carve through the whole file looking for signatures/headers. But there are conditions. A major factor is file fragmentation. Apr 23 '20 at 11:19
  • 1
    @IrfanLatif You learn something new every day, it seems. Thanks for the info!
    – Grimoire
    Apr 23 '20 at 11:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.