RetroArch Android import / 2026-07-25

Fix a RetroArch arcade playlist scan on Android without renaming ROMs

Separate Android storage access, stale core info, strict database rejection, manual-scan choices, and core assignment when authorized arcade files do not appear in a playlist.

9 minute import guideRetroArch on Android with a versioned arcade core

Fix a RetroArch arcade playlist scan on Android without renaming ROMs

First prove RetroArch can browse the authorized file, update core info and databases, then run the default strict scan and read a miss as a database mismatch—not proof that the file is bad. Use a manual or loose scan only after recording the file’s provenance and target core, and assign that exact core to the playlist before launch.

Do this in order

  1. 01

    Record the RetroArch version, exact arcade core revision, authorized source, file name, size, and checksum.

  2. 02

    Use Load Content to confirm the Android picker or configured start directory can browse the file.

  3. 03

    Update Core Info Files and Databases, restart RetroArch, and keep the intended core installed.

  4. 04

    Run the default strict scan once; if the item is rejected, compare its CRC or serial with the current database and target-core DAT.

  5. 05

    Use a manual or loose scan only for a known, authorized item, then set the playlist’s default core explicitly.

  6. 06

    Launch one entry, verify the displayed core/version and audit result, and back up the resulting playlist without bundling game files.

Decision and diagnostic table

Observed resultWhat it establishesNext action
File absent from browserAndroid access or configured directory problemRepair the document-tree grant or start directory
Browser sees it; strict scan omits itNo current database key matchCheck database freshness, CRC/serial, and core DAT
Manual scan adds it; launch failsPlaylist creation worked, compatibility did notAssign the exact core and run its audit
Launch works; thumbnail missingPlayback and artwork matching are separateCheck playlist/entry naming and rights before adding art

A strict scan is a validator, not a folder index

Libretro documents the default automatic scan as a database check. It computes a CRC for smaller files or reads a serial for supported disc content, then adds only entries that match the local database under strict rules.

A rejected file may be an unknown homebrew build, a different revision, a stale database, or an incorrect dump. Renaming it does not change the key used for validation.

Manual scan trades certainty for explicit control

A manual or loose scan can create entries without a strict database match. That is useful for your own builds and creator-authorized releases, but it does not verify integrity, compatibility, title metadata, or rights.

Record the target core and provenance before relaxing the scan. Assign the playlist core deliberately so a later automatic choice does not send an arcade set to a different MAME generation.

Android access and playlist paths are separate

RetroArch cannot scan a directory that Android has not exposed to it. Confirm the file is browsable before investigating database keys, and preserve the document-tree grant when moving a library or replacing storage.

Back up the `.lpl` playlist as configuration only. If the storage provider changes identifiers or paths, rebuild entries from your authorized library rather than editing unknown paths in bulk.

First-party sources

Related guides