Where an Android signage player stores downloaded media

6 min read · Published November 5, 2026

An Android signage player keeps every downloaded file in its own private app folder: /Android/data/{package name}/files on shared storage or /data/data/{package name}/files in internal memory. From Android 11 a file manager cannot open either folder, so you confirm downloads through the player's media inventory report or, on a card-based player, the card-out test.

An Android signage player does not scatter downloads across the device. Every player app keeps everything it fetches inside one private folder that belongs to that app: either /Android/data/{package name}/files on the device's shared storage or /data/data/{package name}/files in internal memory. The folder is named after the app's package name, which is why it often looks like a random string. And from Android 11, an ordinary file manager on the device cannot open either folder, so walking the file system is the wrong way to confirm a download. The checks that work are the player's own media inventory report and, on a card-based player, a simple card-out test. This page explains the two folder locations, what scoped storage changed, and how to confirm that the media you sent actually arrived.

One private folder per player app

Every Android app installs under a package name, and Android hands that package two folders: one on shared storage at /Android/data/{package name}/files, one in internal memory at /data/data/{package name}/files. Whatever the player downloads lands in one of them. Which one depends on the app. A player that offers a storage setting between internal and external storage moves its folder between those two roots; the tail of the path, /files, stays the same.

Size the folder against your playlist, not against a rule of thumb. As a planning figure, one minute of 1080p H.264 video at 8 megabits per second is about 60 megabytes: 8 Mb/s multiplied by 60 seconds is 480 megabits, and 480 divided by 8 is 60 MB. A 40-slide menu board of 500 KB JPEG images is about 20 MB on top of that, so a 10-minute looping playlist sits comfortably under 1 GB.

Ours is a card-based player: it plays images and MP4 from microSD or USB and keeps a copy of the show in internal memory, so the show carries on when the card comes out. The files you edit are on the card; the private folder is the app's working copy. If you have not picked the player yet, start with how to choose a digital signage player, and put offline playback at the top of your list.

Why the folder name looks like gibberish

The package name is set once, in the app's build, and it can share nothing with the display name you see on screen. That is why a folder can read like a random string of characters while the app itself shows a tidy name. Android creates the folder at install, assigns it to that package, and nothing on the device renames it.

You find the package name the same way for any player: it is printed in the app's documentation, and for an app distributed through an app store it appears in the store listing's address. Two players on the same box never share a folder. Each package gets its own, and neither can read into the other's.

What scoped storage changed

Scoped storage is Android's rule that files belong to the app that wrote them. Android 10, shipped as API level 29, introduced it, and Android 11 enforces it: an app writes freely only inside its own app-specific folders, and other apps, including an ordinary file manager, are blocked from them. Below Android 10, a file manager with storage permission could list /Android/data directly.

/data/data is a different case on every version. It sits in internal memory behind Linux file permissions, and no file manager on a standard device opens it, so do not root a working sign to go looking. The practical split is simple: on Android 9 and older you can browse the app-specific folder; from Android 10 up, plan on the folder being closed.

Example: a player on Android 11 whose folder will not open

Inputs. The device runs Android 11, which you read on the device's settings screen under About. The rule is scoped storage, introduced with Android 10 at API level 29. The tool is an ordinary file manager installed on the device. The playlist holds 12 files, about 350 MB in total, all MP4.

The rule in words. Android 11 and newer enforce scoped storage, so the file manager counts among the apps blocked from another app's folder under /Android/data. /data/data is closed on every version.

The arithmetic. The check is a comparison against the version where the rule began. The device reports 11; the rule begins at Android 10, API level 29. 11 is greater than or equal to 10, so the restriction applies, and the file manager comes back with an empty or missing listing. On a device reporting 9, 9 is less than 10, and the same file manager would list the folder.

The result. The empty listing is scoped storage working. It is not evidence either way about the 12 files, 350 MB, the player holds.

The decision. From Android 10 (API level 29) upward, stop checking with a file manager and use the checks below. On Android 9 or older the file manager still works, and the folder you find still ends in the package name.

How to confirm a download finished

Server-synced players. A player that pulls its playlist from a server reports a media inventory back to it: the list of files the player holds. That report is the check. Compare it against the playlist on the server; a file on the server and missing from the inventory is a file the device does not have. Expect the sync timer's interval, which is minutes, before the report refreshes.

Card-based players, ours included. The card is the shipment. Let the full playlist run through once from the card; a 10-minute loop needs 10 minutes. Then pull the card, keep watching for 2 minutes, and put the card back after the test: if the show carries on, the internal copy is in place. If a file sits on the card and still refuses to play, that is a playback question, and fixing a video that plays over USB but not in the player app walks through it. If the box must come up on its own at power-on with no keyboard, setting up offline playlist autostart covers the startup side.

Recommendation: treat the folder on the device as closed. Build the card on your PC and confirm with the card-out test, or, for a synced player, read the media inventory and compare it against the playlist. Open a file manager on the sign only when it runs Android 9 or older.

What this changes on the sign

Keep the master copies at the source: the card you build on a PC, or the files on your own web server for a synced playlist. Our player's optional sync pulls a playlist from your own web server over HTTPS on a timer, with no subscription. Updates then happen at the source: rebuild the card or let the timer fetch the new playlist, with no file work on the device, which Android now blocks anyway. If you run a cloud CMS app on the box instead, the same folder rules apply to it and you check downloads from its own dashboard.

The same pattern holds on machine screens, where media should live with the system that serves it, as in where media should live on a PLC visualization screen. Budget storage from the playlist you actually ship and leave headroom for the next one; we publish no internal storage figure for these units. If you are building the content itself, the content guide and the starter slide packs are in our downloads section.

Questions

Can I change where a signage player stores its files?

Only the player app can move it. Android names the folder after the package at install and gives no system-level switch. If the app offers a storage choice between internal and external, that setting picks between the two roots and the tail of the path stays /files. Otherwise the location is fixed for as long as that app is installed. If you need media you can open from a PC, keep the masters on the card or USB stick or on your own web server, and let the player copy what it needs.

How much storage does a downloaded playlist need?

Add the file sizes in your playlist and leave headroom for the next update. As a planning figure, one minute of 1080p H.264 video at 8 megabits per second is about 60 megabytes: 8 multiplied by 60 seconds is 480 megabits, and 480 divided by 8 is 60. We publish no internal storage figure for these units, so size against your own playlist and confirm the files actually play before you deploy.

What happens to the folder if I uninstall the player?

Uninstalling removes the app's private folder in internal memory and its folder under /Android/data. A freshly installed player therefore starts with an empty library and copies or downloads its media again. This is also why two player apps on one box never share files: each app gets its own folder named after its own package name, and neither can read into the other's.

Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.

Keep reading

Build your signAsk for a quote