From 7d6880e24b45c0c47da2d8cfd86761a8b055f2c6 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 8 Jan 2026 16:24:47 +0100 Subject: [PATCH 01/57] Update install-android.md: Complement for #1107 Make the "Installation notes" and its sub-sections visible in the menu bar --- docs/guides/install-android.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index d218668c38..1dad26c100 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -31,19 +31,19 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). -# Installation notes +## Installation notes -## Side-loading +### Side-loading * Android may tell you that `the app doesn’t have permission to install APKs`. Click the available `Settings` button in that prompt. * In the next menu, turn on the toggle allowing the app install APKs. * `Hit the back button` to return to your installation. -## Allowing APK installations blocked by Google Play Protect +### Allowing APK installations blocked by Google Play Protect To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ensure Google Play Protect either approves it or disable the service entirely. -### Method 1: "Install anyway" in Google Play Protect +#### Method 1: "Install anyway" in Google Play Protect ![google-play-protect_-_install-anyway-1.png](../image/guides/google-play-protect_-_install-anyway-1.png) @@ -51,7 +51,7 @@ To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), * When you select “Install anyway”, Google Play Protect will ask you to authenticate your identity. For security reasons, this step cannot be captured in a screenshot, which is why it's described here instead. If Play Protect still fails to install the app even after you’ve entered the correct password, you’ll need to disable Google Play Protect. For instructions, see [Method 2: Disable Google Play Protect](#method-2-disable-google-play-protect). -### Method 2: Disable Google Play Protect +#### Method 2: Disable Google Play Protect If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to temporarily disable Play Protect to proceed. From ee02ac8c5e4b81aa77dac2c64ba3e67c72e63a03 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 00:24:59 +0100 Subject: [PATCH 02/57] Update install-android.md DeGoogle notices --- docs/guides/install-android.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 1dad26c100..5c82f4535f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -31,6 +31,8 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). +DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store and Yalp Store offer free alternatives, enabling anonymous downloads and updates from Google Play servers without a Google account. + ## Installation notes ### Side-loading @@ -49,17 +51,18 @@ To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ![google-play-protect_-_install-anyway-2.png](../image/guides/google-play-protect_-_install-anyway-2.png) -* When you select “Install anyway”, Google Play Protect will ask you to authenticate your identity. For security reasons, this step cannot be captured in a screenshot, which is why it's described here instead. If Play Protect still fails to install the app even after you’ve entered the correct password, you’ll need to disable Google Play Protect. For instructions, see [Method 2: Disable Google Play Protect](#method-2-disable-google-play-protect). +When you select “Install anyway”, Google Play Protect prompts for identity authentication (password or fingerprint). For security reasons, this step cannot be screenshotted, so it's described textually here. This method requires no Google account—unlike [disabling Google Play Protect](#method-2-disable-google-play-protect), needed if authentication still fails after entering the correct password. #### Method 2: Disable Google Play Protect -If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to temporarily disable Play Protect to proceed. +If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. The downside of this method is that it **requires** a Google account to sign in to the Google Play Store. -Disable Google Play Protect: -* Open the Play Store app first -* Tap your profile icon -* Select Play Protect -* Tap the gear icon in settings -* Toggle off "Scan apps with Play Protect" +* Create a Google account if you don’t already have one. +* Open the Google Play Store app +* Click on the "Sign in" button and sign in with your Google account. +* Tap your profile icon. +* Select Play Protect. +* Tap the gear icon (Settings). +* Toggle off "Scan apps with Play Protect". Once disabled, install the APK — Play Protect will no longer interfere with the process. From c508bd99ce98e504f387537107d31dae4f13ba9f Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 00:30:13 +0100 Subject: [PATCH 03/57] Update install-android.md Removed Yalp Store, not maintained --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 5c82f4535f..48e44794d7 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -31,7 +31,7 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). -DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store and Yalp Store offer free alternatives, enabling anonymous downloads and updates from Google Play servers without a Google account. +DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative, enabling anonymous downloads and updates from Google Play servers without a Google account. ## Installation notes From e31d54fb58918f4a1e0b07f915c89cc61b3f8e89 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 00:35:10 +0100 Subject: [PATCH 04/57] Update install-android.md https://f-droid.org/en/packages/com.aurora.store/ --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 48e44794d7..8589f9645f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -31,7 +31,7 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). -DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative, enabling anonymous downloads and updates from Google Play servers without a Google account. +DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store, avalible from the [F-droid](https://f-droid.org/en/packages/com.aurora.store/) repository, offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. ## Installation notes From 24b1bc1b0232a68e3fadca1210cf14cb6bd126f0 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 01:09:22 +0100 Subject: [PATCH 05/57] Update install-android.md Added "Installation via Obtainium" section --- docs/guides/install-android.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 8589f9645f..16d23536c3 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -3,25 +3,33 @@ ## Non-Google Play sources ### Installation via Side-loading -Side-loading means installing manually downloaded APK files on Android (outside official stores).
+Side-loading involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. You must follow the [installation notes](#installation-notes) for this process. #### From RetroArch.com Downloads + +#### Installation via Obtainium +* Install Obtainium: The most recent stable release can be found [in its F-Droid repository]([https://f-droid.org/packages/com.retroarch/](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/)) +* Visit https://apps.obtainium.imranr.dev/ + * Search for "RetroArch" + * Click on the "Add to Obtainium" link. + +##### Manual Downloads ___ 1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. 2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). 3. Select Install. -##### From Buildbot Archives +###### From Buildbot Archives ___ All [stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. > 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. ### Installation via F-Droid ___ -RetroArch's most recent stable release can be found [in the F-Droid repository](https://f-droid.org/packages/com.retroarch/) for easier automatic updating. +RetroArch's most recent stable release can be found [in its F-Droid repository](https://f-droid.org/packages/com.retroarch/) for easier automatic updating. -### (NOT RECOMMENDED) Installation via Google Play +### (NOT RECOMMENDED) Installation via Google Play servers ___ RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. @@ -31,7 +39,7 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). -DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store, avalible from the [F-droid](https://f-droid.org/en/packages/com.aurora.store/) repository, offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. +DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store, avalible from its [F-droid](https://f-droid.org/en/packages/com.aurora.store/) repository, offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. ## Installation notes From 11cbdca896154ce8a4084d37baac975fb93b5e22 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 01:53:13 +0100 Subject: [PATCH 06/57] Update install-android.md The F-Droid release is incomplete --- docs/guides/install-android.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 16d23536c3..cb8adfa3cf 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -8,7 +8,9 @@ You must follow the [installation notes](#installation-notes) for this process. #### From RetroArch.com Downloads -#### Installation via Obtainium +#### Installation via Obtainium (recommended) +"Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium + * Install Obtainium: The most recent stable release can be found [in its F-Droid repository]([https://f-droid.org/packages/com.retroarch/](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/)) * Visit https://apps.obtainium.imranr.dev/ * Search for "RetroArch" @@ -25,11 +27,13 @@ ___ All [stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. > 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. -### Installation via F-Droid +### Installation via F-Droid (incomplete) ___ RetroArch's most recent stable release can be found [in its F-Droid repository](https://f-droid.org/packages/com.retroarch/) for easier automatic updating. -### (NOT RECOMMENDED) Installation via Google Play servers +Note that the F-Droid package lacks many resources ([GitHub issue #16126](https://github.com/libretro/RetroArch/issues/16126); see also [F-Droid RFP #1933](https://gitlab.com/fdroid/rfp/-/issues/1933#note_1731005305)). Both issues are now closed but the resource problems persist. + +### Installation via Google Play servers (obsolete) ___ RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. From 4a89de418bb08b13660b0ba89f74424d47955990 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 04:02:19 +0100 Subject: [PATCH 07/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit You don’t need to be signed in to adjust Play Protect settings --- docs/guides/install-android.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index cb8adfa3cf..0daa0e2a90 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -67,13 +67,12 @@ When you select “Install anyway”, Google Play Protect prompts for identity a #### Method 2: Disable Google Play Protect -If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. The downside of this method is that it **requires** a Google account to sign in to the Google Play Store. +If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. -* Create a Google account if you don’t already have one. * Open the Google Play Store app -* Click on the "Sign in" button and sign in with your Google account. -* Tap your profile icon. -* Select Play Protect. +* Tap the hamburger button located in the top right. + * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, this icon will show the first letter of your name (for example, “F” for “Foo”). +* Select "Play Protect". * Tap the gear icon (Settings). * Toggle off "Scan apps with Play Protect". From bd24f8b6298fd608793dc176df1df48099436012 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 04:03:45 +0100 Subject: [PATCH 08/57] Update install-android.md wording --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 0daa0e2a90..c397ce1a2e 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -71,7 +71,7 @@ If Google Play Protect still blocks the app installation even after you entered * Open the Google Play Store app * Tap the hamburger button located in the top right. - * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, this icon will show the first letter of your name (for example, “F” for “Foo”). + * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, An icon will show the first letter of your name (for example, “F” for “Foo”) instead of a hamburger button. * Select "Play Protect". * Tap the gear icon (Settings). * Toggle off "Scan apps with Play Protect". From dd301264723af666619c2a593418bf45fde3ac37 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 04:12:41 +0100 Subject: [PATCH 09/57] Update install-android.md Wording --- docs/guides/install-android.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index c397ce1a2e..f31fa7479b 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -70,9 +70,9 @@ When you select “Install anyway”, Google Play Protect prompts for identity a If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. * Open the Google Play Store app -* Tap the hamburger button located in the top right. +* Tap the menu icon in the top right corner. * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, An icon will show the first letter of your name (for example, “F” for “Foo”) instead of a hamburger button. -* Select "Play Protect". +* Tap "Play Protect". * Tap the gear icon (Settings). * Toggle off "Scan apps with Play Protect". From 2f5eccce281aa9429a02a621752ca05703c6c332 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 04:19:58 +0100 Subject: [PATCH 10/57] Update install-android.md improve "sideloading" text --- docs/guides/install-android.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index f31fa7479b..4ca72325fd 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -2,8 +2,8 @@ ## Non-Google Play sources -### Installation via Side-loading -Side-loading involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. +### Installation via Sideloading +When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. You must follow the [installation notes](#installation-notes) for this process. #### From RetroArch.com Downloads @@ -47,7 +47,7 @@ DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Stor ## Installation notes -### Side-loading +### Sideloading * Android may tell you that `the app doesn’t have permission to install APKs`. Click the available `Settings` button in that prompt. * In the next menu, turn on the toggle allowing the app install APKs. @@ -69,7 +69,7 @@ When you select “Install anyway”, Google Play Protect prompts for identity a If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. -* Open the Google Play Store app +* Open the Google Play Store app. * Tap the menu icon in the top right corner. * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, An icon will show the first letter of your name (for example, “F” for “Foo”) instead of a hamburger button. * Tap "Play Protect". From 866450ca8790617f7b19ea9534e939fa3094c4c8 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 04:58:48 +0100 Subject: [PATCH 11/57] Update install-android.md Install unknown apps --- docs/guides/install-android.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 4ca72325fd..b087ad8e14 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -4,7 +4,8 @@ ### Installation via Sideloading When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. -You must follow the [installation notes](#installation-notes) for this process. + +If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). #### From RetroArch.com Downloads @@ -49,15 +50,18 @@ DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Stor ### Sideloading -* Android may tell you that `the app doesn’t have permission to install APKs`. Click the available `Settings` button in that prompt. -* In the next menu, turn on the toggle allowing the app install APKs. +#### Install unknown apps + +Android may prompt `For your security, your phone currently isn't allowed to install unknonw apps from this source. You can change this in Settings`. +* Click the available `Settings` button in that prompt. +* In the `Install unknown apps` menu, toggle on `Allow from this source` to permit the app to install APKs. * `Hit the back button` to return to your installation. -### Allowing APK installations blocked by Google Play Protect +#### Allowing APK installations blocked by Google Play Protect To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ensure Google Play Protect either approves it or disable the service entirely. -#### Method 1: "Install anyway" in Google Play Protect +##### Method 1: "Install anyway" in Google Play Protect ![google-play-protect_-_install-anyway-1.png](../image/guides/google-play-protect_-_install-anyway-1.png) @@ -65,7 +69,7 @@ To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), When you select “Install anyway”, Google Play Protect prompts for identity authentication (password or fingerprint). For security reasons, this step cannot be screenshotted, so it's described textually here. This method requires no Google account—unlike [disabling Google Play Protect](#method-2-disable-google-play-protect), needed if authentication still fails after entering the correct password. -#### Method 2: Disable Google Play Protect +##### Method 2: Disable Google Play Protect If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. From c2ca06023625e35225d5f106009b1a4480536d3a Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 05:54:03 +0100 Subject: [PATCH 12/57] Update install-android.md Improved phrasing for sideloading steps --- docs/guides/install-android.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index b087ad8e14..90e2289f46 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -5,7 +5,9 @@ ### Installation via Sideloading When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. -If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). +To sideload successfully, complete these two steps: +* The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. +* If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). #### From RetroArch.com Downloads @@ -52,7 +54,7 @@ DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Stor #### Install unknown apps -Android may prompt `For your security, your phone currently isn't allowed to install unknonw apps from this source. You can change this in Settings`. +The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), Android displays a prompt: `For your security, your phone currently isn't allowed to install unknonw apps from this source. You can change this in Settings`. * Click the available `Settings` button in that prompt. * In the `Install unknown apps` menu, toggle on `Allow from this source` to permit the app to install APKs. * `Hit the back button` to return to your installation. @@ -63,6 +65,8 @@ To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ##### Method 1: "Install anyway" in Google Play Protect +This procedure must be repeated each time you sideload an app: + ![google-play-protect_-_install-anyway-1.png](../image/guides/google-play-protect_-_install-anyway-1.png) ![google-play-protect_-_install-anyway-2.png](../image/guides/google-play-protect_-_install-anyway-2.png) @@ -79,5 +83,5 @@ If Google Play Protect still blocks the app installation even after you entered * Tap "Play Protect". * Tap the gear icon (Settings). * Toggle off "Scan apps with Play Protect". - -Once disabled, install the APK — Play Protect will no longer interfere with the process. +* Install the APK — Play Protect will no longer interfere with the process. +* Android may prompt you to enable Play Protect each time you sideload an APK; always select "No" to maintain this habit. From d954002d05fba0cfc81aa2492c808c72aee8471a Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 06:23:01 +0100 Subject: [PATCH 13/57] Update install-android.md The step to disable Play Protection is complex and should be read carefully to ensure success on all Android devices. --- docs/guides/install-android.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 90e2289f46..2012f48236 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -5,9 +5,9 @@ ### Installation via Sideloading When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. -To sideload successfully, complete these two steps: -* The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. -* If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). +To sideload successfully: +* The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most smartphone users can complete it without consulting the detailed instructions. +* If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. #### From RetroArch.com Downloads From 00b390aeeaa7e76442e9b760b34e0cae63dba28d Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 06:23:54 +0100 Subject: [PATCH 14/57] Update install-android.md wording --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 2012f48236..23ff56ce4d 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -6,7 +6,7 @@ When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. To sideload successfully: -* The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most smartphone users can complete it without consulting the detailed instructions. +* The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most Android users can complete it without consulting the detailed instructions. * If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. #### From RetroArch.com Downloads From 25b011e81d639d87a4de0abf2d9426d4e8fc016e Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 9 Jan 2026 19:39:15 +0100 Subject: [PATCH 15/57] Update install-android.md Completed the Obtainium installation guide --- docs/guides/install-android.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 23ff56ce4d..bb8f64ac5d 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -3,7 +3,7 @@ ## Non-Google Play sources ### Installation via Sideloading -When referring to Android apps, "sideloading" involves installing APK files on Android devices from sources outside official app stores. These APKs can be obtained manually or automatically via apps like Obtainium. +Sideloading Android apps involves installing APK files from sources outside official stores. Apps like Obtainium automate APK downloads for the latest versions, avoiding issues with manual methods such as lengthy repeated downloads/installations and missed updates. To sideload successfully: * The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most Android users can complete it without consulting the detailed instructions. @@ -14,10 +14,18 @@ To sideload successfully: #### Installation via Obtainium (recommended) "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium -* Install Obtainium: The most recent stable release can be found [in its F-Droid repository]([https://f-droid.org/packages/com.retroarch/](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/)) -* Visit https://apps.obtainium.imranr.dev/ - * Search for "RetroArch" - * Click on the "Add to Obtainium" link. +To install the latest stable RetroArch APK — whether 32-bit, AArch64, or Universal — from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, follow these steps: + +* Install Obtainium + * Download the latest stable version from its [F-Droid repository](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/) +* Add RetroArch to Obtainium + * Visit https://apps.obtainium.imranr.dev/. + * Search for "RetroArch". + * Select “Add to Obtainium” for either RetroArch (32-bit), RetroArch (AArch64), or RetroArch (Universal). +* Import and Install + * When the “Import app” prompt appears, tap **Continue**. +* Open the newly added RetroArch entry. +* Tap **Install** to download and install the app. ##### Manual Downloads ___ @@ -27,7 +35,7 @@ ___ ###### From Buildbot Archives ___ -All [stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. +All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. > 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. ### Installation via F-Droid (incomplete) From 6645dd8ab8fc597effdfc61262f42f8a3e96a866 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Sat, 10 Jan 2026 05:24:27 +0100 Subject: [PATCH 16/57] Update install-android.md wording --- docs/guides/install-android.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index bb8f64ac5d..22c6b1164d 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -16,8 +16,7 @@ To sideload successfully: To install the latest stable RetroArch APK — whether 32-bit, AArch64, or Universal — from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, follow these steps: -* Install Obtainium - * Download the latest stable version from its [F-Droid repository](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/) +* Install [Obtainium](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/) from F-Droid. * Add RetroArch to Obtainium * Visit https://apps.obtainium.imranr.dev/. * Search for "RetroArch". @@ -40,7 +39,7 @@ All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) ### Installation via F-Droid (incomplete) ___ -RetroArch's most recent stable release can be found [in its F-Droid repository](https://f-droid.org/packages/com.retroarch/) for easier automatic updating. +The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. Note that the F-Droid package lacks many resources ([GitHub issue #16126](https://github.com/libretro/RetroArch/issues/16126); see also [F-Droid RFP #1933](https://gitlab.com/fdroid/rfp/-/issues/1933#note_1731005305)). Both issues are now closed but the resource problems persist. @@ -54,7 +53,7 @@ RetroArch is available on the Google Play Store, but has not been updated for ye A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). -DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store, avalible from its [F-droid](https://f-droid.org/en/packages/com.aurora.store/) repository, offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. +DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. ## Installation notes From b12cb9af830e5ecd3b6db25d8dd4e90863510e00 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Sat, 10 Jan 2026 12:30:23 +0100 Subject: [PATCH 17/57] Update install-android.md Added: "The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions." --- docs/guides/install-android.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 22c6b1164d..9638c21db0 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -14,7 +14,9 @@ To sideload successfully: #### Installation via Obtainium (recommended) "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium -To install the latest stable RetroArch APK — whether 32-bit, AArch64, or Universal — from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, follow these steps: +Obtainium installs the latest stable RetroArch APK — whether 32‑bit, AArch64, or Universal — directly from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, the same source used for manual downloads. The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions. + +To install RetroArch from Obtainium, follow these steps: * Install [Obtainium](https://f-droid.org/en/packages/dev.imranr.obtainium.fdroid/) from F-Droid. * Add RetroArch to Obtainium From 3be4868c6db9e4963f5a3bdf67b9a01c4fde87ec Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Sat, 10 Jan 2026 12:32:29 +0100 Subject: [PATCH 18/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added: "It’s also worth noting that Obtainium is Android TV–friendly, making it suitable for use across all Android devices" --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 9638c21db0..a68c5b9d6c 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -14,7 +14,7 @@ To sideload successfully: #### Installation via Obtainium (recommended) "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium -Obtainium installs the latest stable RetroArch APK — whether 32‑bit, AArch64, or Universal — directly from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, the same source used for manual downloads. The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions. +Obtainium installs the latest stable RetroArch APK — whether 32‑bit, AArch64, or Universal — directly from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, the same source used for manual downloads. The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions. It’s also worth noting that Obtainium is Android TV–friendly, making it suitable for use across all Android devices. To install RetroArch from Obtainium, follow these steps: From 1e431d8f1d24529ea5081f14b8b03f46e45413eb Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 30 Jan 2026 01:24:16 +0100 Subject: [PATCH 19/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Moved “Installation via Obtainium” section below “Manual Downloads” and removed “(recommended)” from its heading. --- docs/guides/install-android.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index a68c5b9d6c..25380ac5b5 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -11,7 +11,18 @@ To sideload successfully: #### From RetroArch.com Downloads -#### Installation via Obtainium (recommended) +##### Manual Downloads +___ +1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. +2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). +3. Select Install. + +###### From Buildbot Archives +___ +All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. +> 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. + +#### Installation via Obtainium "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium Obtainium installs the latest stable RetroArch APK — whether 32‑bit, AArch64, or Universal — directly from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, the same source used for manual downloads. The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions. It’s also worth noting that Obtainium is Android TV–friendly, making it suitable for use across all Android devices. @@ -28,17 +39,6 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. -##### Manual Downloads -___ -1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. -2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). -3. Select Install. - -###### From Buildbot Archives -___ -All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. -> 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. - ### Installation via F-Droid (incomplete) ___ The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. From eeaf305e67bcb67d1a9691395d77eb520de5e4cb Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Sun, 22 Feb 2026 09:44:06 +0100 Subject: [PATCH 20/57] Update install-android.md Updated the "Installation via F-Droid (incomplete)" section. Most issues in https://github.com/libretro/RetroArch/issues/16126 have been solved, but I've submitted this report since the issue persists across Google streaming devices: * F-Droid release missing assets for armeabi-v7a ABI (32-bit ARM), pixelated fonts and icons - https://github.com/libretro/RetroArch/issues/18756 --- docs/guides/install-android.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 25380ac5b5..34aa2ea81f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -41,9 +41,9 @@ To install RetroArch from Obtainium, follow these steps: ### Installation via F-Droid (incomplete) ___ -The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. +The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. The APK supports ABIs: arm64-v8a, armeabi-v7a, x86, x86_64. -Note that the F-Droid package lacks many resources ([GitHub issue #16126](https://github.com/libretro/RetroArch/issues/16126); see also [F-Droid RFP #1933](https://gitlab.com/fdroid/rfp/-/issues/1933#note_1731005305)). Both issues are now closed but the resource problems persist. +The armeabi-v7a variant lacks assets (impacting microconsoles; see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Workaround: Main Menu → Online Updater → Update Assets. ### Installation via Google Play servers (obsolete) ___ From e28661402025145e0264d4b37171c1a30969a4f6 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 23 Feb 2026 00:14:23 +0100 Subject: [PATCH 21/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Following hizzlekizzle's advice (https://github.com/libretro/docs/pull/1109#issuecomment-3939589473), added note that the F-Droid RetroArch release ships with minimal assets to reduce APK size, and requires using the Online Updater (Main Menu → Online Updater) to match the retroarch.com release. --- docs/guides/install-android.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 34aa2ea81f..5edcc64c22 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -12,13 +12,13 @@ To sideload successfully: #### From RetroArch.com Downloads ##### Manual Downloads -___ + 1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. 2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). 3. Select Install. ###### From Buildbot Archives -___ + All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. > 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. @@ -40,13 +40,15 @@ To install RetroArch from Obtainium, follow these steps: * Tap **Install** to download and install the app. ### Installation via F-Droid (incomplete) -___ + The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. The APK supports ABIs: arm64-v8a, armeabi-v7a, x86, x86_64. -The armeabi-v7a variant lacks assets (impacting microconsoles; see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Workaround: Main Menu → Online Updater → Update Assets. +To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. + +The armeabi-v7a variant lacks assets (impacting microconsoles; see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. ### Installation via Google Play servers (obsolete) -___ + RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. [RetroArch Plus on the Play Store](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (Only for 64 bit devices, additional cores) From a767ab9f8d77a6cd522de601901d85062813b6a0 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 23 Feb 2026 03:29:14 +0100 Subject: [PATCH 22/57] Update install-android.md minor --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 5edcc64c22..b167e91d5b 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -45,7 +45,7 @@ The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. -The armeabi-v7a variant lacks assets (impacting microconsoles; see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. +The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. ### Installation via Google Play servers (obsolete) From 8f077028c9297a9daed4542ea4ed824fdd1779eb Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 26 Feb 2026 15:04:15 +0100 Subject: [PATCH 23/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated the “Allowing APK installations blocked by Google Play Protect” subsections. Most notably, I was unable to reproduce the issue where method 2 succeeds if method 1 fails on an older Android device. Upon re-evaluating the setup on that phone, method 2 also failed whenever method 1 failed. However, after performing a factory reset, both methods succeeded. See the history https://github.com/libretro/RetroArch/issues/17014#issue-2532987893 (the main post) for details. --- docs/guides/install-android.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index b167e91d5b..8c785ab41f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -74,25 +74,26 @@ The first time you attempt to install an APK via an app (e.g. via any file manag To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ensure Google Play Protect either approves it or disable the service entirely. -##### Method 1: "Install anyway" in Google Play Protect +##### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup -This procedure must be repeated each time you sideload an app: +When you tap "Install" for the APK, Google Play Protect runs a security scan and displays options similar to those shown below: ![google-play-protect_-_install-anyway-1.png](../image/guides/google-play-protect_-_install-anyway-1.png) ![google-play-protect_-_install-anyway-2.png](../image/guides/google-play-protect_-_install-anyway-2.png) -When you select “Install anyway”, Google Play Protect prompts for identity authentication (password or fingerprint). For security reasons, this step cannot be screenshotted, so it's described textually here. This method requires no Google account—unlike [disabling Google Play Protect](#method-2-disable-google-play-protect), needed if authentication still fails after entering the correct password. +When you select “Install anyway”, Google Play Protect may prompt for identity authentication (password or fingerprint). For security reasons, this step cannot be screenshotted, that is why it's described textually here. ##### Method 2: Disable Google Play Protect -If Google Play Protect still blocks the app installation even after you entered the correct password in Method 1 (a common issue on older Android versions), you'll need to disable Play Protect to proceed. +This method lets you skip the steps in method 1, which can be convenient since method 1 may require you to authenticate each time. * Open the Google Play Store app. -* Tap the menu icon in the top right corner. - * You don’t need to be signed in to adjust Play Protect settings. But if you’re signed in to a Google account, An icon will show the first letter of your name (for example, “F” for “Foo”) instead of a hamburger button. -* Tap "Play Protect". -* Tap the gear icon (Settings). -* Toggle off "Scan apps with Play Protect". +* Locate and tap "Play Protect" — its location depends on your Android version and whether you’re signed in: + - Tap the hamburger menu (☰) in the upper-left or upper-right corner. + - If you’re signed in, check both the hamburger menu (☰) and your profile icon, as Play Protect may appear under either. The profile icon shows your account initial (e.g., “F” for Foo). +* Tap the gear icon ⚙️ to open Settings. +* Toggle off "Scan apps with Play Protect": + - You may be asked whether to "Pause" scanning temporarily or "Turn off" permanently — choose the option you prefer. * Install the APK — Play Protect will no longer interfere with the process. -* Android may prompt you to enable Play Protect each time you sideload an APK; always select "No" to maintain this habit. +* Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. From 092ef2c9fc2c95043acfe5affd6e9a719408d0cd Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 26 Feb 2026 15:29:29 +0100 Subject: [PATCH 24/57] Update install-android.md Added intro to the "Allowing APK installations blocked by Google Play Protect" section --- docs/guides/install-android.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 8c785ab41f..3674bc7457 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -72,7 +72,9 @@ The first time you attempt to install an APK via an app (e.g. via any file manag #### Allowing APK installations blocked by Google Play Protect -To install RetroArch from non-Google Play sources (F-Droid, retroarch.com, etc), ensure Google Play Protect either approves it or disable the service entirely. +To install RetroArch from non-Google Play sources (such as F-Droid or retroarch.com), you may need to either allow it through Google Play Protect or disable Play Protect entirely. + +Since RetroArch 1.19.1, if you skip the methods in the sub-sections below, the app may either fail to install without warning or display the message “App installation failed. The package couldn’t be installed because the verification did not succeed.” This issue appears to affect some Android versions and hardware configurations, but not all. For example, the current RetroArch APK may fail to install on the standard Android version without following these methods, while it may succeed on the current Android TV version. ##### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup From b8634652039345f864b902e54472268f4a99264b Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 26 Feb 2026 18:34:34 +0100 Subject: [PATCH 25/57] Update install-android.md minor --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 3674bc7457..d53e57400b 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -74,7 +74,7 @@ The first time you attempt to install an APK via an app (e.g. via any file manag To install RetroArch from non-Google Play sources (such as F-Droid or retroarch.com), you may need to either allow it through Google Play Protect or disable Play Protect entirely. -Since RetroArch 1.19.1, if you skip the methods in the sub-sections below, the app may either fail to install without warning or display the message “App installation failed. The package couldn’t be installed because the verification did not succeed.” This issue appears to affect some Android versions and hardware configurations, but not all. For example, the current RetroArch APK may fail to install on the standard Android version without following these methods, while it may succeed on the current Android TV version. +Since RetroArch 1.19.1, if you skip the methods in the sub-sections below, the app may either fail to install without warning or display the message “App not installed.” This issue appears to affect some Android versions and hardware configurations, but not all. For example, the current RetroArch APK may fail to install on the standard Android version without following these methods, while it may succeed on the current Android TV version. ##### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup From 4150d861de326fd2dace43f1ab4fe24d72524044 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 26 Feb 2026 21:55:05 +0100 Subject: [PATCH 26/57] Update install-android.md If "App not installed" appears due to a Play Protect bug blocking "Install anyway" (e.g., after signing in and updating on Android 10 with LG G7 ThinQ LM-G710EM), disable Play Protect using Method 2. --- docs/guides/install-android.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index d53e57400b..2b29db7c07 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -76,6 +76,8 @@ To install RetroArch from non-Google Play sources (such as F-Droid or retroarch. Since RetroArch 1.19.1, if you skip the methods in the sub-sections below, the app may either fail to install without warning or display the message “App not installed.” This issue appears to affect some Android versions and hardware configurations, but not all. For example, the current RetroArch APK may fail to install on the standard Android version without following these methods, while it may succeed on the current Android TV version. +If you get "App not installed" your version of Play Protect may have a bug that prevents you from using the feature.[1] If so, use Method 2—disable Google Play Protect to permit blocked APK installs. + ##### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup When you tap "Install" for the APK, Google Play Protect runs a security scan and displays options similar to those shown below: @@ -84,12 +86,10 @@ When you tap "Install" for the APK, Google Play Protect runs a security scan and ![google-play-protect_-_install-anyway-2.png](../image/guides/google-play-protect_-_install-anyway-2.png) -When you select “Install anyway”, Google Play Protect may prompt for identity authentication (password or fingerprint). For security reasons, this step cannot be screenshotted, that is why it's described textually here. +If you get "App not installed," your Play Protect version may have a bug preventing use of the "Install anyway" feature.[1] In that case, use Method 2—disable Google Play Protect to permit blocked APK installs. ##### Method 2: Disable Google Play Protect -This method lets you skip the steps in method 1, which can be convenient since method 1 may require you to authenticate each time. - * Open the Google Play Store app. * Locate and tap "Play Protect" — its location depends on your Android version and whether you’re signed in: - Tap the hamburger menu (☰) in the upper-left or upper-right corner. @@ -99,3 +99,6 @@ This method lets you skip the steps in method 1, which can be convenient since m - You may be asked whether to "Pause" scanning temporarily or "Turn off" permanently — choose the option you prefer. * Install the APK — Play Protect will no longer interfere with the process. * Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. + +## References +1: Use Case: After signing into Google and updating Play Protect on Android 10 with an LG G7 ThinQ (LM-G710EM), the "Install anyway" prompt results in an "App not installed" error. From 02d89ea5d447f14d9b6a6e77774d14d9e1e09db4 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 27 Feb 2026 09:29:59 +0100 Subject: [PATCH 27/57] Update install-android.md Update the "References" section --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 2b29db7c07..975ec14461 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -101,4 +101,4 @@ If you get "App not installed," your Play Protect version may have a bug prevent * Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. ## References -1: Use Case: After signing into Google and updating Play Protect on Android 10 with an LG G7 ThinQ (LM-G710EM), the "Install anyway" prompt results in an "App not installed" error. +1: Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com triggers "App not installed" on "Install anyway." The same APK installs successfully via factory reset and sideloading offline. From 61adb5995b43891d0f03112a43675a9e8c278888 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Fri, 27 Feb 2026 09:37:27 +0100 Subject: [PATCH 28/57] Update install-android.md Update the "References" section again --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 975ec14461..d16ae474b2 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -101,4 +101,4 @@ If you get "App not installed," your Play Protect version may have a bug prevent * Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. ## References -1: Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com triggers "App not installed" on "Install anyway." The same APK installs successfully via factory reset and sideloading offline. +Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From 996997fe01edebd699f34187ec48069f6f39f0ec Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 02:23:24 +0100 Subject: [PATCH 29/57] Update install-android.md Added a new "RetroArch APK Package Variants" section with a table (6 builds: universal/stable/nightly + arch-specific aarch64/ra32) with Android 7.0+ multi-package compatibility notes distinguishing package name handling pre/post-Nougat. --- docs/guides/install-android.md | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index d16ae474b2..6deb7582b0 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -1,6 +1,6 @@ # Downloading, Installing and Updating RetroArch for Android devices. -## Non-Google Play sources +## Non-Google Play Sources ### Installation via Sideloading Sideloading Android apps involves installing APK files from sources outside official stores. Apps like Obtainium automate APK downloads for the latest versions, avoiding issues with manual methods such as lengthy repeated downloads/installations and missed updates. @@ -10,6 +10,13 @@ To sideload successfully: * If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. #### From RetroArch.com Downloads +retroarch.com offers six apk builds: +* Architecture-specific builds: RetroArch_aarch64.apk and RetroArch_ra32.apk for stable, and YYYY-MM-DD-RetroArch_aarch64.apk and YYYY-MM-DD-RetroArch_ra32.apk for nightly. APK's that contain "aarch64.apk", and "ra32.apk" in the filename has package name com.retroarch.aarch64 and com.retroarch.ra32 respective when installed in Android. +* Universal package: RetroArch.apk for stable, and YYYY-MM-DD-RetroArch.apk for nightly. Their package name is com.retroarch when installed in Android. + +Android 7.0 (Nougat) or later supports installing both architecture-specific RetroArch builds (com.retroarch.aarch64 and com.retroarch.ra32) alongside the universal package (com.retroarch) without forcing an upgrade. Android introduced improved multi-package handling in 7.0, treating distinct package names as separate apps rather than conflicting upgrades like in earlier versions. + +It is not possible to install both stable and nightly builds of the same apk on any system. ##### Manual Downloads @@ -100,5 +107,23 @@ If you get "App not installed," your Play Protect version may have a bug prevent * Install the APK — Play Protect will no longer interfere with the process. * Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. +## RetroArch APK Package Variants + +RetroArch.com provides six Android APK builds with distinct package names: + +| Type | Variant | Filename | Package Name | +|---------|------------------|-----------------------------------|--------------------| +| Stable | Universal | `RetroArch.apk` | `com.retroarch` | +| Stable | Architecture-specific | `RetroArch_aarch64.apk` | `com.retroarch.aarch64` | +| Stable | Architecture-specific | `RetroArch_ra32.apk` | `com.retroarch.ra32` | +| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | `com.retroarch` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | + +### Compatibility Notes +- **Android 7.0+ (Nougat)**: Supports multi-package handling. This makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. +- **Pre-7.0**: Distinct package names treated as conflicting upgrades. +- **Stable vs Nightly**: Cannot coexist for the same package name on any Android version. + ## References Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From 40809fb9c8d8db6beca6d30c18effc5eb2cd8d9b Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 02:32:42 +0100 Subject: [PATCH 30/57] Update install-android.md Wording --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 6deb7582b0..a78bbbcb1f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -109,7 +109,7 @@ If you get "App not installed," your Play Protect version may have a bug prevent ## RetroArch APK Package Variants -RetroArch.com provides six Android APK builds with distinct package names: +RetroArch.com provides six Android APK builds with three distinct package names: | Type | Variant | Filename | Package Name | |---------|------------------|-----------------------------------|--------------------| From 3f76555087ab078426efde933bc5d60255dd5c5c Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 02:46:29 +0100 Subject: [PATCH 31/57] Update install-android.md Clarified instructions for installing stable and nightly builds on the same device. --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index a78bbbcb1f..313be97b9e 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -123,7 +123,7 @@ RetroArch.com provides six Android APK builds with three distinct package names: ### Compatibility Notes - **Android 7.0+ (Nougat)**: Supports multi-package handling. This makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. - **Pre-7.0**: Distinct package names treated as conflicting upgrades. -- **Stable vs Nightly**: Cannot coexist for the same package name on any Android version. +- **Installing both stable and nightly builds on the same device**: To install both the stable and nightly versions of RetroArch, ensure that the APKs use different package names, since Android does not allow multiple apps with the same package name to coexist. For example, on a typical 64-bit Android system, you can install the stable RetroArch.apk (com.retroarch) alongside YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64), but you cannot install RetroArch.apk (com.retroarch) together with YYYY-MM-DD-RetroArch.apk (com.retroarch), nor RetroArch_aarch64.apk (com.retroarch.aarch64) together with YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64). ## References Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From 9bba45815e2fc1a8b34777484062220968254f09 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 02:56:35 +0100 Subject: [PATCH 32/57] Update install-android.md Move "Installing both stable and nightly builds on the same device" under "Android 7.0+ (Nougat)" --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 313be97b9e..29cf35229c 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -122,8 +122,8 @@ RetroArch.com provides six Android APK builds with three distinct package names: ### Compatibility Notes - **Android 7.0+ (Nougat)**: Supports multi-package handling. This makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. + - **Installing both stable and nightly builds on the same device**: To install both the stable and nightly versions of RetroArch, ensure that the APKs use different package names, since Android does not allow multiple apps with the same package name to coexist. For example, on a typical 64-bit Android system, you can install the stable RetroArch.apk (com.retroarch) alongside YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64), but you cannot install RetroArch.apk (com.retroarch) together with YYYY-MM-DD-RetroArch.apk (com.retroarch), nor RetroArch_aarch64.apk (com.retroarch.aarch64) together with YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64). - **Pre-7.0**: Distinct package names treated as conflicting upgrades. -- **Installing both stable and nightly builds on the same device**: To install both the stable and nightly versions of RetroArch, ensure that the APKs use different package names, since Android does not allow multiple apps with the same package name to coexist. For example, on a typical 64-bit Android system, you can install the stable RetroArch.apk (com.retroarch) alongside YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64), but you cannot install RetroArch.apk (com.retroarch) together with YYYY-MM-DD-RetroArch.apk (com.retroarch), nor RetroArch_aarch64.apk (com.retroarch.aarch64) together with YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64). ## References Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From a738f1d083eac70e8f19c39d048c73ec12cc4863 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 03:07:30 +0100 Subject: [PATCH 33/57] Update install-android.md Rename the "Compatibility Notes" section to "Multi-Package Handling" --- docs/guides/install-android.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 29cf35229c..df72caaf1f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -120,10 +120,16 @@ RetroArch.com provides six Android APK builds with three distinct package names: | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | -### Compatibility Notes -- **Android 7.0+ (Nougat)**: Supports multi-package handling. This makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. - - **Installing both stable and nightly builds on the same device**: To install both the stable and nightly versions of RetroArch, ensure that the APKs use different package names, since Android does not allow multiple apps with the same package name to coexist. For example, on a typical 64-bit Android system, you can install the stable RetroArch.apk (com.retroarch) alongside YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64), but you cannot install RetroArch.apk (com.retroarch) together with YYYY-MM-DD-RetroArch.apk (com.retroarch), nor RetroArch_aarch64.apk (com.retroarch.aarch64) together with YYYY-MM-DD-RetroArch_aarch64.apk (com.retroarch.aarch64). -- **Pre-7.0**: Distinct package names treated as conflicting upgrades. +### Multi-Package Handling +Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. + +For example, to install both the stable and nightly versions of RetroArch on a typical 64-bit device, you can install: +- the stable `RetroArch.apk` (`com.retroarch`) alongside `YYYY-MM-DD-RetroArch_aarch64.apk` (`com.retroarch.aarch64`) +- or `RetroArch_aarch64.apk` (`com.retroarch.aarch64`) alongside `YYYY-MM-DD-RetroArch.apk` (`com.retroarch`) + +However, you cannot install: +- `RetroArch.apk` together with `YYYY-MM-DD-RetroArch.apk` (both `com.retroarch`) +- nor `RetroArch_aarch64.apk` together with `YYYY-MM-DD-RetroArch_aarch64.apk` (both `com.retroarch.aarch64`) ## References Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From affdba09d927baf761ce1e691f7d8d18bf968b62 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 03:15:53 +0100 Subject: [PATCH 34/57] Update install-android.md Removed my duplicated text that I already added under the "RetroArch APK Package Variants" section --- docs/guides/install-android.md | 7 ------- 1 file changed, 7 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index df72caaf1f..9598a3f0cb 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -10,13 +10,6 @@ To sideload successfully: * If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. #### From RetroArch.com Downloads -retroarch.com offers six apk builds: -* Architecture-specific builds: RetroArch_aarch64.apk and RetroArch_ra32.apk for stable, and YYYY-MM-DD-RetroArch_aarch64.apk and YYYY-MM-DD-RetroArch_ra32.apk for nightly. APK's that contain "aarch64.apk", and "ra32.apk" in the filename has package name com.retroarch.aarch64 and com.retroarch.ra32 respective when installed in Android. -* Universal package: RetroArch.apk for stable, and YYYY-MM-DD-RetroArch.apk for nightly. Their package name is com.retroarch when installed in Android. - -Android 7.0 (Nougat) or later supports installing both architecture-specific RetroArch builds (com.retroarch.aarch64 and com.retroarch.ra32) alongside the universal package (com.retroarch) without forcing an upgrade. Android introduced improved multi-package handling in 7.0, treating distinct package names as separate apps rather than conflicting upgrades like in earlier versions. - -It is not possible to install both stable and nightly builds of the same apk on any system. ##### Manual Downloads From e0a913782f8eb5d71031624608637840379acea2 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 03:35:03 +0100 Subject: [PATCH 35/57] Update install-android.md Added "Universal APK" section --- docs/guides/install-android.md | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 9598a3f0cb..c6f27d6344 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -41,7 +41,7 @@ To install RetroArch from Obtainium, follow these steps: ### Installation via F-Droid (incomplete) -The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable release can be found in F-Droid for easier automatic updating. The APK supports ABIs: arm64-v8a, armeabi-v7a, x86, x86_64. +The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. @@ -51,9 +51,8 @@ The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#187 RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. -[RetroArch Plus on the Play Store](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (Only for 64 bit devices, additional cores) - -[RetroArch on the Play Store](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (For 32 or 64 bit devices, fewer cores) +- [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores +- [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): For 32 or 64 bit devices, fewer cores A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). @@ -102,8 +101,6 @@ If you get "App not installed," your Play Protect version may have a bug prevent ## RetroArch APK Package Variants -RetroArch.com provides six Android APK builds with three distinct package names: - | Type | Variant | Filename | Package Name | |---------|------------------|-----------------------------------|--------------------| | Stable | Universal | `RetroArch.apk` | `com.retroarch` | @@ -113,6 +110,18 @@ RetroArch.com provides six Android APK builds with three distinct package names: | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | +### Universal APK + +The universal RetroArch package (`com.retroarch`) automatically detects the device's architecture and runs the appropriate ABI: +- `arm64-v8a`: 64-bit ARM +- `armeabi-v7a`: 32-bit ARM +- `x86`: 32-bit Intel/AMD +- `x86_64`: 64-bit Intel/AMD + +Android supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. + +There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. + ### Multi-Package Handling Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. From edde50e6c2257c435f924539fec084c6a0cc630a Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 03:49:48 +0100 Subject: [PATCH 36/57] Update install-android.md Move the "RetroArch APK Package Variants" section to the topmost position. This section defines essential technical terminology, package types, architecture support, and installation compatibility referenced throughout the rest of the document. Add the remaining sections under a "Sources" section. --- docs/guides/install-android.md | 98 +++++++++++++++++----------------- 1 file changed, 50 insertions(+), 48 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index c6f27d6344..1446e4359c 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -1,28 +1,64 @@ # Downloading, Installing and Updating RetroArch for Android devices. -## Non-Google Play Sources +## RetroArch APK Package Variants + +| Type | Variant | Filename | Package Name | +|---------|------------------|-----------------------------------|--------------------| +| Stable | Universal | `RetroArch.apk` | `com.retroarch` | +| Stable | Architecture-specific | `RetroArch_aarch64.apk` | `com.retroarch.aarch64` | +| Stable | Architecture-specific | `RetroArch_ra32.apk` | `com.retroarch.ra32` | +| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | `com.retroarch` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | + +### Universal APK + +The universal RetroArch package (`com.retroarch`) automatically detects the device's architecture and runs the appropriate application binary interface (ABI): +- `arm64-v8a`: 64-bit ARM +- `armeabi-v7a`: 32-bit ARM +- `x86`: 32-bit Intel/AMD +- `x86_64`: 64-bit Intel/AMD + +Android supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. + +There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. + +### Multi-Package Installation +Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. + +For example, to install both the stable and nightly versions of RetroArch on a typical 64-bit device, you can install: +- the stable `RetroArch.apk` (`com.retroarch`) alongside `YYYY-MM-DD-RetroArch_aarch64.apk` (`com.retroarch.aarch64`) +- or `RetroArch_aarch64.apk` (`com.retroarch.aarch64`) alongside `YYYY-MM-DD-RetroArch.apk` (`com.retroarch`) + +However, you cannot install: +- `RetroArch.apk` together with `YYYY-MM-DD-RetroArch.apk` (both `com.retroarch`) +- nor `RetroArch_aarch64.apk` together with `YYYY-MM-DD-RetroArch_aarch64.apk` (both `com.retroarch.aarch64`) + +## Sources + +### Non-Google Play Sources -### Installation via Sideloading +#### Installation via Sideloading Sideloading Android apps involves installing APK files from sources outside official stores. Apps like Obtainium automate APK downloads for the latest versions, avoiding issues with manual methods such as lengthy repeated downloads/installations and missed updates. To sideload successfully: * The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most Android users can complete it without consulting the detailed instructions. * If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. -#### From RetroArch.com Downloads +##### From RetroArch.com Downloads -##### Manual Downloads +###### Manual Downloads 1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. 2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). 3. Select Install. -###### From Buildbot Archives +####### From Buildbot Archives All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. > 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. -#### Installation via Obtainium +##### Installation via Obtainium "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium Obtainium installs the latest stable RetroArch APK — whether 32‑bit, AArch64, or Universal — directly from https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/, the same source used for manual downloads. The only difference is that Obtainium automates this process and provides update notifications, helping users stay current and avoid reporting issues from outdated versions. It’s also worth noting that Obtainium is Android TV–friendly, making it suitable for use across all Android devices. @@ -39,7 +75,7 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. -### Installation via F-Droid (incomplete) +#### Installation via F-Droid (incomplete) The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. @@ -47,7 +83,7 @@ To minimize installation size, the F-Droid release includes only a basic set of The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. -### Installation via Google Play servers (obsolete) +#### Installation via Google Play servers (obsolete) RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. @@ -58,18 +94,18 @@ A more detailed difference between the Play Store versions can be found in [this DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. -## Installation notes +### Installation notes -### Sideloading +#### Sideloading -#### Install unknown apps +##### Install unknown apps The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), Android displays a prompt: `For your security, your phone currently isn't allowed to install unknonw apps from this source. You can change this in Settings`. * Click the available `Settings` button in that prompt. * In the `Install unknown apps` menu, toggle on `Allow from this source` to permit the app to install APKs. * `Hit the back button` to return to your installation. -#### Allowing APK installations blocked by Google Play Protect +##### Allowing APK installations blocked by Google Play Protect To install RetroArch from non-Google Play sources (such as F-Droid or retroarch.com), you may need to either allow it through Google Play Protect or disable Play Protect entirely. @@ -77,7 +113,7 @@ Since RetroArch 1.19.1, if you skip the methods in the sub-sections below, the a If you get "App not installed" your version of Play Protect may have a bug that prevents you from using the feature.[1] If so, use Method 2—disable Google Play Protect to permit blocked APK installs. -##### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup +###### Method 1: Selecting ‘Install anyway’ in the Google Play Protect popup When you tap "Install" for the APK, Google Play Protect runs a security scan and displays options similar to those shown below: @@ -87,7 +123,7 @@ When you tap "Install" for the APK, Google Play Protect runs a security scan and If you get "App not installed," your Play Protect version may have a bug preventing use of the "Install anyway" feature.[1] In that case, use Method 2—disable Google Play Protect to permit blocked APK installs. -##### Method 2: Disable Google Play Protect +###### Method 2: Disable Google Play Protect * Open the Google Play Store app. * Locate and tap "Play Protect" — its location depends on your Android version and whether you’re signed in: @@ -99,39 +135,5 @@ If you get "App not installed," your Play Protect version may have a bug prevent * Install the APK — Play Protect will no longer interfere with the process. * Note: Android may prompt you to re-enable Play Protect each time you sideload an APK. If your goal is to keep it permanently turned off, always select "No" when prompted. -## RetroArch APK Package Variants - -| Type | Variant | Filename | Package Name | -|---------|------------------|-----------------------------------|--------------------| -| Stable | Universal | `RetroArch.apk` | `com.retroarch` | -| Stable | Architecture-specific | `RetroArch_aarch64.apk` | `com.retroarch.aarch64` | -| Stable | Architecture-specific | `RetroArch_ra32.apk` | `com.retroarch.ra32` | -| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | `com.retroarch` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | - -### Universal APK - -The universal RetroArch package (`com.retroarch`) automatically detects the device's architecture and runs the appropriate ABI: -- `arm64-v8a`: 64-bit ARM -- `armeabi-v7a`: 32-bit ARM -- `x86`: 32-bit Intel/AMD -- `x86_64`: 64-bit Intel/AMD - -Android supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. - -There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. - -### Multi-Package Handling -Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. - -For example, to install both the stable and nightly versions of RetroArch on a typical 64-bit device, you can install: -- the stable `RetroArch.apk` (`com.retroarch`) alongside `YYYY-MM-DD-RetroArch_aarch64.apk` (`com.retroarch.aarch64`) -- or `RetroArch_aarch64.apk` (`com.retroarch.aarch64`) alongside `YYYY-MM-DD-RetroArch.apk` (`com.retroarch`) - -However, you cannot install: -- `RetroArch.apk` together with `YYYY-MM-DD-RetroArch.apk` (both `com.retroarch`) -- nor `RetroArch_aarch64.apk` together with `YYYY-MM-DD-RetroArch_aarch64.apk` (both `com.retroarch.aarch64`) - ## References Case Report: On Android 10 with LG G7 ThinQ (LM-G710EM), after factory reset, signing into Play Store (allowing self-update and setup), sideloading RetroArch 1.22.2 from retroarch.com and tapping "Install anyway" triggers "App not installed" before the password prompt—even with the correct password entered. Disabling Play Protect was the sole workaround to install the APK; otherwise, factory reset with offline sideloading was required. From 03d496771175a9546979f873ede0e6d1750813b2 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Mon, 16 Mar 2026 03:53:54 +0100 Subject: [PATCH 37/57] Update install-android.md Fix buildbot section --- docs/guides/install-android.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 1446e4359c..14aca434c9 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -11,6 +11,8 @@ | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | | Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | +Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. + ### Universal APK The universal RetroArch package (`com.retroarch`) automatically detects the device's architecture and runs the appropriate application binary interface (ABI): @@ -53,10 +55,9 @@ To sideload successfully: 2. Open the downloaded APK (via a file manager if your browser does not prompt you when the download is completed). 3. Select Install. -####### From Buildbot Archives +**From Buildbot Archives** -All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. -> 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. +All [stable](https://buildbot.libretro.com/stable/CURRENTVERSIONNUMBER/android/) and [nightly](https://buildbot.libretro.com/nightly/android/) bundles are available via BuildBot If you need a specific architecture or build for testing. ##### Installation via Obtainium "Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available." - Obtainium From 931028e12623dd593cc7d6ed6d92e3476ece4e6f Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 09:59:47 +0100 Subject: [PATCH 38/57] Update install-android.md RetroArch Plus note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 14aca434c9..1f9febe5ac 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -88,7 +88,7 @@ The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#187 RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. -- [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores +- [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores. Note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. - [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): For 32 or 64 bit devices, fewer cores A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). From 266689646ac939b5261906c3343bd0c3ba1fc769 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 10:29:25 +0100 Subject: [PATCH 39/57] Update install-android.md Added "RetroArch (stable 32/64-bit, Play Store)" and "RetroArch Plus (stable 64-bit only, Play Store)" sections --- docs/guides/install-android.md | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 1f9febe5ac..e94cb43d4a 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -38,7 +38,7 @@ However, you cannot install: ## Sources -### Non-Google Play Sources +### Non-Play Store Sources #### Installation via Sideloading Sideloading Android apps involves installing APK files from sources outside official stores. Apps like Obtainium automate APK downloads for the latest versions, avoiding issues with manual methods such as lengthy repeated downloads/installations and missed updates. @@ -76,7 +76,7 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. -#### Installation via F-Droid (incomplete) +#### Installation via F-Droid (stable 32/64-bit) (incomplete) The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. @@ -86,15 +86,22 @@ The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#187 #### Installation via Google Play servers (obsolete) -RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. - -- [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores. Note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. -- [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): For 32 or 64 bit devices, fewer cores +The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. +##### RetroArch (stable 32/64-bit, Play Store) +[RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): For 32 or 64 bit devices, fewer cores + +##### RetroArch Plus (stable 64-bit only, Play Store) +[RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores. + +Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. Also, RetroArch Plus is not avalible on all Android devices even if they have an up to date Android system. + +RetroArch Plus is available on Google Pixel phones because their pure Google hardware and stock OS reliably pass compatibility checks, even for legacy apps. Native Play Store prioritizes "safe" devices and hides the outdated APK on incompatible ones—like those with non-stock OS skins, slower updates, or mid-range SoCs that trigger stricter enforcement of policies like target API levels and storage access. Aurora Store bypasses these filters entirely, making it a reliable workaround for such devices. + ### Installation notes #### Sideloading From 544a2e44b534d1017b4060c43e88b4b1ffdf9321 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 10:40:25 +0100 Subject: [PATCH 40/57] Update install-android.md Improve "RetroArch (stable 32/64-bit, Play Store)" section --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index e94cb43d4a..58e43d998b 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -93,7 +93,7 @@ A more detailed difference between the Play Store versions can be found in [this DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. ##### RetroArch (stable 32/64-bit, Play Store) -[RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): For 32 or 64 bit devices, fewer cores +[RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): Supports both 32- and 64-bit devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. ##### RetroArch Plus (stable 64-bit only, Play Store) [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores. From 51555affb7a381962780f16c620f299e05c137a6 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 10:43:55 +0100 Subject: [PATCH 41/57] Update install-android.md Improve "RetroArch Plus (stable 64-bit only, Play Store)" section --- docs/guides/install-android.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 58e43d998b..4769be8c4a 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -96,9 +96,7 @@ DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Stor [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): Supports both 32- and 64-bit devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. ##### RetroArch Plus (stable 64-bit only, Play Store) -[RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices, additional cores. - -Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. Also, RetroArch Plus is not avalible on all Android devices even if they have an up to date Android system. +[RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices. Includes more cores than the standard RetroArch available on the Play Store. Note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. Also, RetroArch Plus is not avalible on all Android devices even if they have an up to date Android system. RetroArch Plus is available on Google Pixel phones because their pure Google hardware and stock OS reliably pass compatibility checks, even for legacy apps. Native Play Store prioritizes "safe" devices and hides the outdated APK on incompatible ones—like those with non-stock OS skins, slower updates, or mid-range SoCs that trigger stricter enforcement of policies like target API levels and storage access. Aurora Store bypasses these filters entirely, making it a reliable workaround for such devices. From f500ec547efd2f1feb871163c7c7c17dec3d0ee3 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 10:47:20 +0100 Subject: [PATCH 42/57] Update install-android.md Fix "Installation via Google Play servers (obsolete)" sectional indentations --- docs/guides/install-android.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 4769be8c4a..b3ce89190c 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -84,7 +84,7 @@ To minimize installation size, the F-Droid release includes only a basic set of The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. -#### Installation via Google Play servers (obsolete) +### Installation via Google Play servers (obsolete) The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. @@ -92,10 +92,10 @@ A more detailed difference between the Play Store versions can be found in [this DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. -##### RetroArch (stable 32/64-bit, Play Store) +#### RetroArch (stable 32/64-bit, Play Store) [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): Supports both 32- and 64-bit devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. -##### RetroArch Plus (stable 64-bit only, Play Store) +#### RetroArch Plus (stable 64-bit only, Play Store) [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices. Includes more cores than the standard RetroArch available on the Play Store. Note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. Also, RetroArch Plus is not avalible on all Android devices even if they have an up to date Android system. RetroArch Plus is available on Google Pixel phones because their pure Google hardware and stock OS reliably pass compatibility checks, even for legacy apps. Native Play Store prioritizes "safe" devices and hides the outdated APK on incompatible ones—like those with non-stock OS skins, slower updates, or mid-range SoCs that trigger stricter enforcement of policies like target API levels and storage access. Aurora Store bypasses these filters entirely, making it a reliable workaround for such devices. From 98a5df81e586cc70e96d749b0ae4d1c9fd185e48 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 11:05:27 +0100 Subject: [PATCH 43/57] Update install-android.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On Android versions prior to 8.0, the APK installation prompt displays a pre-checked "Allow this installation only" checkbox—uncheck it to quickly install RetroArch updates, which is especially relevant when subscribing to daily RetroArch Nightly downloads via Obtainium. --- docs/guides/install-android.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index b3ce89190c..0bc0680381 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -109,6 +109,7 @@ RetroArch Plus is available on Google Pixel phones because their pure Google har The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), Android displays a prompt: `For your security, your phone currently isn't allowed to install unknonw apps from this source. You can change this in Settings`. * Click the available `Settings` button in that prompt. * In the `Install unknown apps` menu, toggle on `Allow from this source` to permit the app to install APKs. + - On Android versions prior to 8.0, the APK installation prompt displays a pre-checked "Allow this installation only" checkbox—uncheck it to quickly install RetroArch updates, which is especially relevant when subscribing to daily RetroArch Nightly downloads via Obtainium. * `Hit the back button` to return to your installation. ##### Allowing APK installations blocked by Google Play Protect From a6c6eb6b0ebd36252e2574d702bf261dc4e09fd6 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 11:42:01 +0100 Subject: [PATCH 44/57] Update install-android.md Incorporated a table of custom RetroArch APK package variants into each section. --- docs/guides/install-android.md | 42 ++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 0bc0680381..b0b187b5af 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -2,14 +2,11 @@ ## RetroArch APK Package Variants -| Type | Variant | Filename | Package Name | -|---------|------------------|-----------------------------------|--------------------| -| Stable | Universal | `RetroArch.apk` | `com.retroarch` | -| Stable | Architecture-specific | `RetroArch_aarch64.apk` | `com.retroarch.aarch64` | -| Stable | Architecture-specific | `RetroArch_ra32.apk` | `com.retroarch.ra32` | -| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | `com.retroarch` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk`| `com.retroarch.aarch64` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | `com.retroarch.ra32` | +| Variant | Package Name | +|-----------------------|-------------------------| +| Universal | `com.retroarch` | +| Architecture-specific | `com.retroarch.aarch64` | +| Architecture-specific | `com.retroarch.ra32` | Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. @@ -29,12 +26,12 @@ There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. For example, to install both the stable and nightly versions of RetroArch on a typical 64-bit device, you can install: -- the stable `RetroArch.apk` (`com.retroarch`) alongside `YYYY-MM-DD-RetroArch_aarch64.apk` (`com.retroarch.aarch64`) -- or `RetroArch_aarch64.apk` (`com.retroarch.aarch64`) alongside `YYYY-MM-DD-RetroArch.apk` (`com.retroarch`) +- Stable release (`com.retroarch`) + 64-bit nightly (`com.retroarch.aarch64`) +- 64-bit release (`com.retroarch.aarch64`) + stable nightly (`com.retroarch`) However, you cannot install: -- `RetroArch.apk` together with `YYYY-MM-DD-RetroArch.apk` (both `com.retroarch`) -- nor `RetroArch_aarch64.apk` together with `YYYY-MM-DD-RetroArch_aarch64.apk` (both `com.retroarch.aarch64`) +- Stable + stable nightly (both `com.retroarch`) +- 64-bit + 64-bit nightly (both `com.retroarch.aarch64`) ## Sources @@ -49,6 +46,17 @@ To sideload successfully: ##### From RetroArch.com Downloads +| Type | Variant | Filename | Version identifier | Package Name | +|---------|-----------------------|------------------------------------|----------------------|-------------------------| +| Stable | Universal | `RetroArch.apk` | [version number]_GIT | `com.retroarch` | +| Stable | Architecture-specific | `RetroArch_aarch64.apk` | [version number]_GIT | `com.retroarch.aarch64` | +| Stable | Architecture-specific | `RetroArch_ra32.apk` | [version number]_GIT | `com.retroarch.ra32` | +| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | [version number]_GIT | `com.retroarch` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk` | [version number]_GIT | `com.retroarch.aarch64` | +| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | [version number]_GIT | `com.retroarch.ra32` | + +Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. + ###### Manual Downloads 1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. @@ -78,6 +86,11 @@ To install RetroArch from Obtainium, follow these steps: #### Installation via F-Droid (stable 32/64-bit) (incomplete) +| Type | Variant | Filename | Version identifier | Package Name | +|---------|------------------|-------------------------------------|--------------------|---------------------| +| Stable | Universal | `com.retroarch_[UNIXTIMESTAMP].apk` | [version number] | `com.retroarch` | + + The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. @@ -86,6 +99,11 @@ The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#187 ### Installation via Google Play servers (obsolete) +| Type | Variant | Version identifier | Package Name | +|---------|-----------------------|--------------------------------|-------------------------| +| Stable | Universal | [version number] (YYYY-MM-DD) | `com.retroarch` | +| Stable | Architecture-specific | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | + The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). From 0ab61882ad4d59a482b033a954bc2be91c38151e Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 11:43:08 +0100 Subject: [PATCH 45/57] Update install-android.md Fixed typo --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index b0b187b5af..65bcdb329d 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -1,4 +1,4 @@ -# Downloading, Installing and Updating RetroArch for Android devices. +# Downloading, Installing and Updating RetroArch for Android devices ## RetroArch APK Package Variants From 192d7c8373da7c75a78e94eaba571b781d12771d Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Tue, 17 Mar 2026 11:51:33 +0100 Subject: [PATCH 46/57] Update install-android.md Improved top table --- docs/guides/install-android.md | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 65bcdb329d..fe1b2dd8c0 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -2,25 +2,15 @@ ## RetroArch APK Package Variants -| Variant | Package Name | -|-----------------------|-------------------------| -| Universal | `com.retroarch` | -| Architecture-specific | `com.retroarch.aarch64` | -| Architecture-specific | `com.retroarch.ra32` | +| Package Name | Supported application binary interface (ABI) | Architectures | +|-------------------------|----------------------------------------------|------------------------------------------------------------| +| `com.retroarch` | `arm64-v8a`, `armeabi-v7a`, `x86`, `x86_64` | 64-bit ARM, 32-bit ARM, 32-bit Intel/AMD, 64-bit Intel/AMD | +| `com.retroarch.aarch64` | `arm64-v8a` | 64-bit ARM | +| `com.retroarch.ra32` | `armeabi-v7a` | 32-bit ARM | -Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. - -### Universal APK - -The universal RetroArch package (`com.retroarch`) automatically detects the device's architecture and runs the appropriate application binary interface (ABI): -- `arm64-v8a`: 64-bit ARM -- `armeabi-v7a`: 32-bit ARM -- `x86`: 32-bit Intel/AMD -- `x86_64`: 64-bit Intel/AMD - -Android supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. +Package names are named with an architecture suffix: `.aarch64` is a 64-bit build, `.ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. -There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. +`com.retroarch` supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. ### Multi-Package Installation Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. From 299445af9fb8899e5f99997f14b4e5ca6976861f Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 00:19:25 +0100 Subject: [PATCH 47/57] Update install-android.md Added "Overview" table section --- docs/guides/install-android.md | 37 ++++++++++++++-------------------- 1 file changed, 15 insertions(+), 22 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index fe1b2dd8c0..915c211a3f 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -8,7 +8,7 @@ | `com.retroarch.aarch64` | `arm64-v8a` | 64-bit ARM | | `com.retroarch.ra32` | `armeabi-v7a` | 32-bit ARM | -Package names are named with an architecture suffix: `.aarch64` is a 64-bit build, `.ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. +Package names are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. This suffix is also used in retroarch.comi apk filenamess. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. `com.retroarch` supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. @@ -25,6 +25,20 @@ However, you cannot install: ## Sources +### Overview + +| Source | Filename | Type | Version identifier | Package name | +|--------------------|---------------------------------------|---------|-------------------------------|-------------------------| +| RetroArch official | `RetroArch.apk` | Stable | [version number]_GIT | `com.retroarch` | +| RetroArch official | `RetroArch_aarch64.apk` | Stable | [version number]_GIT | `com.retroarch.aarch64` | +| RetroArch official | `RetroArch_ra32.apk` | Stable | [version number]_GIT | `com.retroarch.ra32` | +| RetroArch official | `YYYY-MM-DD-RetroArch.apk` | Nightly | [version number]_GIT | `com.retroarch` | +| RetroArch official | `YYYY-MM-DD-RetroArch_aarch64.apk` | Nightly | [version number]_GIT | `com.retroarch.aarch64` | +| RetroArch official | `YYYY-MM-DD-RetroArch_ra32.apk` | Nightly | [version number]_GIT | `com.retroarch.ra32` | +| F-Droid | `com.retroarch_[UNIXTIMESTAMP].apk` | Stable | [version number] | `com.retroarch` | +| Play Store | - | Stable | [version number] (YYYY-MM-DD) | `com.retroarch` | +| Play Store | - | Stable | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | + ### Non-Play Store Sources #### Installation via Sideloading @@ -36,17 +50,6 @@ To sideload successfully: ##### From RetroArch.com Downloads -| Type | Variant | Filename | Version identifier | Package Name | -|---------|-----------------------|------------------------------------|----------------------|-------------------------| -| Stable | Universal | `RetroArch.apk` | [version number]_GIT | `com.retroarch` | -| Stable | Architecture-specific | `RetroArch_aarch64.apk` | [version number]_GIT | `com.retroarch.aarch64` | -| Stable | Architecture-specific | `RetroArch_ra32.apk` | [version number]_GIT | `com.retroarch.ra32` | -| Nightly | Universal | `YYYY-MM-DD-RetroArch.apk` | [version number]_GIT | `com.retroarch` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_aarch64.apk` | [version number]_GIT | `com.retroarch.aarch64` | -| Nightly | Architecture-specific | `YYYY-MM-DD-RetroArch_ra32.apk` | [version number]_GIT | `com.retroarch.ra32` | - -Builds are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. - ###### Manual Downloads 1. Visit the retroarch.com [Downloads page](https://www.retroarch.com/?page=platforms) and select **Download Stable** or **Download Nightly**. @@ -76,11 +79,6 @@ To install RetroArch from Obtainium, follow these steps: #### Installation via F-Droid (stable 32/64-bit) (incomplete) -| Type | Variant | Filename | Version identifier | Package Name | -|---------|------------------|-------------------------------------|--------------------|---------------------| -| Stable | Universal | `com.retroarch_[UNIXTIMESTAMP].apk` | [version number] | `com.retroarch` | - - The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. @@ -89,11 +87,6 @@ The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#187 ### Installation via Google Play servers (obsolete) -| Type | Variant | Version identifier | Package Name | -|---------|-----------------------|--------------------------------|-------------------------| -| Stable | Universal | [version number] (YYYY-MM-DD) | `com.retroarch` | -| Stable | Architecture-specific | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | - The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). From bd5f43706b5c821ca23e0fb534cbb573917efa42 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 00:27:19 +0100 Subject: [PATCH 48/57] Update install-android.md Added "Title" column to the overview table --- docs/guides/install-android.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 915c211a3f..d77f0d0e23 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -27,17 +27,17 @@ However, you cannot install: ### Overview -| Source | Filename | Type | Version identifier | Package name | -|--------------------|---------------------------------------|---------|-------------------------------|-------------------------| -| RetroArch official | `RetroArch.apk` | Stable | [version number]_GIT | `com.retroarch` | -| RetroArch official | `RetroArch_aarch64.apk` | Stable | [version number]_GIT | `com.retroarch.aarch64` | -| RetroArch official | `RetroArch_ra32.apk` | Stable | [version number]_GIT | `com.retroarch.ra32` | -| RetroArch official | `YYYY-MM-DD-RetroArch.apk` | Nightly | [version number]_GIT | `com.retroarch` | -| RetroArch official | `YYYY-MM-DD-RetroArch_aarch64.apk` | Nightly | [version number]_GIT | `com.retroarch.aarch64` | -| RetroArch official | `YYYY-MM-DD-RetroArch_ra32.apk` | Nightly | [version number]_GIT | `com.retroarch.ra32` | -| F-Droid | `com.retroarch_[UNIXTIMESTAMP].apk` | Stable | [version number] | `com.retroarch` | -| Play Store | - | Stable | [version number] (YYYY-MM-DD) | `com.retroarch` | -| Play Store | - | Stable | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | +| Source | Filename | Type | Title | Version identifier | Package name | +|--------------------|---------------------------------------|---------|---------------------|-------------------------------|-------------------------| +| RetroArch official | `RetroArch.apk` | Stable | RetroArch | [version number]_GIT | `com.retroarch` | +| RetroArch official | `RetroArch_aarch64.apk` | Stable | RetroArch (AArch64) | [version number]_GIT | `com.retroarch.aarch64` | +| RetroArch official | `RetroArch_ra32.apk` | Stable | RetroArch (32-bit) | [version number]_GIT | `com.retroarch.ra32` | +| RetroArch official | `YYYY-MM-DD-RetroArch.apk` | Nightly | RetroArch | [version number]_GIT | `com.retroarch` | +| RetroArch official | `YYYY-MM-DD-RetroArch_aarch64.apk` | Nightly | RetroArch (AArch64) | [version number]_GIT | `com.retroarch.aarch64` | +| RetroArch official | `YYYY-MM-DD-RetroArch_ra32.apk` | Nightly | RetroArch (32-bit) | [version number]_GIT | `com.retroarch.ra32` | +| F-Droid | `com.retroarch_[UNIXTIMESTAMP].apk` | Stable | RetroArch | [version number] | `com.retroarch` | +| Play Store | - | Stable | RetroArch | [version number] (YYYY-MM-DD) | `com.retroarch` | +| Play Store | - | Stable | RetroArch Plus | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | ### Non-Play Store Sources From 3ad459e7f46ca68c507a9e77a33bc6bc294d17ab Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 00:32:32 +0100 Subject: [PATCH 49/57] Update install-android.md Converted the overview table to HTML to enable a colspan header. --- docs/guides/install-android.md | 102 +++++++++++++++++++++++++++++---- 1 file changed, 91 insertions(+), 11 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index d77f0d0e23..2fbddf4318 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -27,17 +27,97 @@ However, you cannot install: ### Overview -| Source | Filename | Type | Title | Version identifier | Package name | -|--------------------|---------------------------------------|---------|---------------------|-------------------------------|-------------------------| -| RetroArch official | `RetroArch.apk` | Stable | RetroArch | [version number]_GIT | `com.retroarch` | -| RetroArch official | `RetroArch_aarch64.apk` | Stable | RetroArch (AArch64) | [version number]_GIT | `com.retroarch.aarch64` | -| RetroArch official | `RetroArch_ra32.apk` | Stable | RetroArch (32-bit) | [version number]_GIT | `com.retroarch.ra32` | -| RetroArch official | `YYYY-MM-DD-RetroArch.apk` | Nightly | RetroArch | [version number]_GIT | `com.retroarch` | -| RetroArch official | `YYYY-MM-DD-RetroArch_aarch64.apk` | Nightly | RetroArch (AArch64) | [version number]_GIT | `com.retroarch.aarch64` | -| RetroArch official | `YYYY-MM-DD-RetroArch_ra32.apk` | Nightly | RetroArch (32-bit) | [version number]_GIT | `com.retroarch.ra32` | -| F-Droid | `com.retroarch_[UNIXTIMESTAMP].apk` | Stable | RetroArch | [version number] | `com.retroarch` | -| Play Store | - | Stable | RetroArch | [version number] (YYYY-MM-DD) | `com.retroarch` | -| Play Store | - | Stable | RetroArch Plus | [version number] (YYYY-MM-DD) | `com.retroarch.aarch64` | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Installation
SourceFilenameTypeTitleVersion identifierPackage name
RetroArch officialRetroArch.apkStableRetroArch[version number]_GITcom.retroarch
RetroArch officialRetroArch_aarch64.apkStableRetroArch (AArch64)[version number]_GITcom.retroarch.aarch64
RetroArch officialRetroArch_ra32.apkStableRetroArch (32-bit)[version number]_GITcom.retroarch.ra32
RetroArch officialYYYY-MM-DD-RetroArch.apkNightlyRetroArch[version number]_GITcom.retroarch
RetroArch officialYYYY-MM-DD-RetroArch_aarch64.apkNightlyRetroArch (AArch64)[version number]_GITcom.retroarch.aarch64
RetroArch officialYYYY-MM-DD-RetroArch_ra32.apkNightlyRetroArch (32-bit)[version number]_GITcom.retroarch.ra32
F-Droidcom.retroarch_[UNIXTIMESTAMP].apkStableRetroArch[version number]com.retroarch
Play Store-StableRetroArch[version number] (YYYY-MM-DD)com.retroarch
Play Store-StableRetroArch Plus[version number] (YYYY-MM-DD)com.retroarch.aarch64
+ ### Non-Play Store Sources From b6173d46b5193c5eef36e44f19d019d83bf2e62c Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 00:54:19 +0100 Subject: [PATCH 50/57] Update install-android.md improve multi-package installation examples --- docs/guides/install-android.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 2fbddf4318..336cf477d5 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -15,13 +15,8 @@ Package names are named with an architecture suffix: `aarch64` is a 64-bit build ### Multi-Package Installation Android 7.0+ (Nougat) supports multi-package handling, while earlier versions treat distinct package names as conflicting upgrades. However, multi-package handling makes it possible to install the universal package (com.retroarch) alongside the appropriate architecture-specific build (com.retroarch.aarch64 **or** com.retroarch.ra32, depending on device) without forcing an upgrade. -For example, to install both the stable and nightly versions of RetroArch on a typical 64-bit device, you can install: -- Stable release (`com.retroarch`) + 64-bit nightly (`com.retroarch.aarch64`) -- 64-bit release (`com.retroarch.aarch64`) + stable nightly (`com.retroarch`) - -However, you cannot install: -- Stable + stable nightly (both `com.retroarch`) -- 64-bit + 64-bit nightly (both `com.retroarch.aarch64`) +For example, on a typical 64-bit device, install both RetroArch variants: +- `com.retroarch` + `com.retroarch.aarch64` ## Sources @@ -118,6 +113,9 @@ However, you cannot install: +To elaborate on the [Multi-Package Installation](#multi-package-installation) example: On a typical 64-bit device, install both stable and nightly RetroArch versions as follows: +- Stable `com.retroarch` + nightly `com.retroarch.aarch64` +- Stable `com.retroarch.aarch64` + nightly `com.retroarch` ### Non-Play Store Sources From 6839f2aaae5d3082cd8d7d0f087a2a21e97403bd Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 01:07:16 +0100 Subject: [PATCH 51/57] Update install-android.md general improvements --- docs/guides/install-android.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 336cf477d5..700a40a280 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -8,7 +8,7 @@ | `com.retroarch.aarch64` | `arm64-v8a` | 64-bit ARM | | `com.retroarch.ra32` | `armeabi-v7a` | 32-bit ARM | -Package names are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. This suffix is also used in retroarch.comi apk filenamess. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. +Package names are named with an architecture suffix: `aarch64` is a 64-bit build, `ra32` is a 32-bit build, and no suffix is a universal build that opts for 64-bit if your system supports it. This suffix also appears in RetroArch.com APK filenames. 32-bit support on Android is slowly being phased out by the industry, but these builds remain available for older devices or specific use cases. `com.retroarch` supports multiple instruction sets beyond ARM, including `x86` (32-bit Intel/AMD processors) and `x86_64` (64-bit Intel/AMD). These are used for Android-x86 projects, PC emulators, select Chromebooks, and some tablets running Android on Intel hardware. There are no standalone `x86` or `x86_64` releases of RetroArch like the 32-bit and 64-bit ARM variants; the universal package (`com.retroarch`) must be installed to access these ABIs. @@ -126,7 +126,7 @@ To sideload successfully: * The first time you attempt to install an APK via an app (e.g. via any file manager, or Obtainium), enable the [install unknown apps](#install-unknown-apps) permission for it. This step is straightforward, and most Android users can complete it without consulting the detailed instructions. * If Play Protect warnings appear on Android, follow the installation notes for [allowing APK installations blocked by Google Play Protect](#allowing-apk-installations-blocked-by-google-play-protect). This step is more complex and should be read carefully to ensure success on all Android devices. -##### From RetroArch.com Downloads +##### RetroArch.com ###### Manual Downloads @@ -155,7 +155,7 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. -#### Installation via F-Droid (stable 32/64-bit) (incomplete) +#### F-Droid (stable 32/64-bit) (incomplete) The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. @@ -163,7 +163,7 @@ To minimize installation size, the F-Droid release includes only a basic set of The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. -### Installation via Google Play servers (obsolete) +### Google Play servers (obsolete) The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. From 8245f6175673c6229ece472db6f266787ca7d67b Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 01:23:23 +0100 Subject: [PATCH 52/57] Update install-android.md Add subsections for issues to maintain clean section names. Improve the "Google Play servers" section. --- docs/guides/install-android.md | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 700a40a280..d9b2d220fc 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -155,30 +155,35 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. -#### F-Droid (stable 32/64-bit) (incomplete) +#### F-Droid -The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable universal release (com.retroarch) can be found in F-Droid for easier automatic updating. +The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable `com.retroarch` (32/64-bit ARM) package can be found in F-Droid for easier automatic updating. To minimize installation size, the F-Droid release includes only a basic set of assets. For a complete setup matching the retroarch.com release it is necessary to visit `Main Menu` → `Online Updater` within the app to download all additional assets, controller profiles, overlays, shaders, and other required data. +##### F-Droid issue + The `ozone` menu driver lacks assets, impacting popular microconsoles (see [#18756](https://github.com/libretro/RetroArch/issues/18756)). Temporary workaround: Main Menu → Online Updater → Update Assets. -### Google Play servers (obsolete) +### Google Play servers -The stable (but outdated) release of RetroArch is available on the Google Play Store, but has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. +RetroArch is available on the Google Play Store, but is outdated and thus not recommended (see [Google Play servers issue](#google-play-servers-issue)). -A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). +Both RetroArch, and RetroArch Plus is avalaible on Play Store and. A more detailed difference between the Play Store versions can be found in [this libretro blog post](https://www.libretro.com/index.php/retroarch-android-new-versions-for-play-store-please-read/). DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. -#### RetroArch (stable 32/64-bit, Play Store) -[RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en "RetroArch") (com.retroarch): Supports both 32- and 64-bit devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. +#### RetroArch on Play Store +[RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en): It uses the package `com.retroarch`, which supports both 32- and 64-bit ARM devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. -#### RetroArch Plus (stable 64-bit only, Play Store) -[RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US "RetroArch64") (com.retroarch.aarch64): Only for 64 bit devices. Includes more cores than the standard RetroArch available on the Play Store. Note: Despite the implication of superiority in its name, RetroArch Plus builds support approximately 80 fewer cores than APKs from retroarch.com across all variants. Also, RetroArch Plus is not avalible on all Android devices even if they have an up to date Android system. +#### RetroArch Plus on Play Store +[RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US): Uses the package `com.retroarch.aarch64`, supporting only 64-bit ARM devices. It includes more cores than standard RetroArch but ~80 fewer cores than retroarch.com APKs across all variants. Note: Despite its name, RetroArch Plus isn't available on all up-to-date Android devices. RetroArch Plus is available on Google Pixel phones because their pure Google hardware and stock OS reliably pass compatibility checks, even for legacy apps. Native Play Store prioritizes "safe" devices and hides the outdated APK on incompatible ones—like those with non-stock OS skins, slower updates, or mid-range SoCs that trigger stricter enforcement of policies like target API levels and storage access. Aurora Store bypasses these filters entirely, making it a reliable workaround for such devices. +#### Google Play servers issue +The Play Store releases of RetroArch has not been updated for years due to Play Store policy changes. You may choose to use this older version, but it is not recommended. + ### Installation notes #### Sideloading From 9565b9bece8ca1e9109b3267902bb41b1e6ca808 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 01:30:30 +0100 Subject: [PATCH 53/57] Update install-android.md Fix "Google Play servers" sub-section names --- docs/guides/install-android.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index d9b2d220fc..c78331fc10 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -173,10 +173,10 @@ Both RetroArch, and RetroArch Plus is avalaible on Play Store and. A more detail DeGoogle notice: Google Play requires sign-in with a Google account. Aurora Store offers a free alternative enabling anonymous downloads and updates from Google Play servers without a Google account. [Aurora Store](https://f-droid.org/en/packages/com.aurora.store/) is avalible in F-Droid. -#### RetroArch on Play Store +#### RetroArch on Play servers [RetroArch](https://play.google.com/store/apps/details?id=com.retroarch&hl=en): It uses the package `com.retroarch`, which supports both 32- and 64-bit ARM devices. It provides fewer cores than RetroArch Plus but is compatible with a broader range of devices. -#### RetroArch Plus on Play Store +#### RetroArch Plus on Play servers [RetroArch Plus](https://play.google.com/store/apps/details?id=com.retroarch.aarch64&hl=en_US): Uses the package `com.retroarch.aarch64`, supporting only 64-bit ARM devices. It includes more cores than standard RetroArch but ~80 fewer cores than retroarch.com APKs across all variants. Note: Despite its name, RetroArch Plus isn't available on all up-to-date Android devices. RetroArch Plus is available on Google Pixel phones because their pure Google hardware and stock OS reliably pass compatibility checks, even for legacy apps. Native Play Store prioritizes "safe" devices and hides the outdated APK on incompatible ones—like those with non-stock OS skins, slower updates, or mid-range SoCs that trigger stricter enforcement of policies like target API levels and storage access. Aurora Store bypasses these filters entirely, making it a reliable workaround for such devices. From 9c67825a7f7f1e22990f10377dc741a06844919f Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Wed, 18 Mar 2026 01:38:51 +0100 Subject: [PATCH 54/57] Update install-android.md add stable and nightly links to the overview table --- docs/guides/install-android.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index c78331fc10..517003a37a 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -41,7 +41,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official RetroArch.apk - Stable + Stable RetroArch [version number]_GIT com.retroarch @@ -49,7 +49,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official RetroArch_aarch64.apk - Stable + Stable RetroArch (AArch64) [version number]_GIT com.retroarch.aarch64 @@ -57,7 +57,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official RetroArch_ra32.apk - Stable + Stable RetroArch (32-bit) [version number]_GIT com.retroarch.ra32 @@ -65,7 +65,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official YYYY-MM-DD-RetroArch.apk - Nightly + Nightly RetroArch [version number]_GIT com.retroarch @@ -73,7 +73,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official YYYY-MM-DD-RetroArch_aarch64.apk - Nightly + Nightly RetroArch (AArch64) [version number]_GIT com.retroarch.aarch64 @@ -81,7 +81,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: RetroArch official YYYY-MM-DD-RetroArch_ra32.apk - Nightly + Nightly RetroArch (32-bit) [version number]_GIT com.retroarch.ra32 @@ -89,7 +89,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: F-Droid com.retroarch_[UNIXTIMESTAMP].apk - Stable + Stable RetroArch [version number] com.retroarch @@ -97,7 +97,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: Play Store - - Stable + Stable RetroArch [version number] (YYYY-MM-DD) com.retroarch @@ -105,7 +105,7 @@ For example, on a typical 64-bit device, install both RetroArch variants: Play Store - - Stable + Stable RetroArch Plus [version number] (YYYY-MM-DD) com.retroarch.aarch64 From 5664f6333daa767255483cad9d90aa63e4e0a524 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 19 Mar 2026 04:51:05 +0100 Subject: [PATCH 55/57] Update install-android.md Added "Compatibility of `com.retroarch.ra32` on 64-bit ARM Devices" section --- docs/guides/install-android.md | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 517003a37a..1cd09fca36 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -113,10 +113,6 @@ For example, on a typical 64-bit device, install both RetroArch variants: -To elaborate on the [Multi-Package Installation](#multi-package-installation) example: On a typical 64-bit device, install both stable and nightly RetroArch versions as follows: -- Stable `com.retroarch` + nightly `com.retroarch.aarch64` -- Stable `com.retroarch.aarch64` + nightly `com.retroarch` - ### Non-Play Store Sources #### Installation via Sideloading @@ -155,6 +151,28 @@ To install RetroArch from Obtainium, follow these steps: * Open the newly added RetroArch entry. * Tap **Install** to download and install the app. +##### RetroArch.com Package Installation Notes + +###### Install both stable and nightly RetroArch + +This section expands on the [Multi-Package Installation](#multi-package-installation) documentation, focusing specifically on retroarch.com builds. + +On a typical 64-bit device, install both stable and nightly RetroArch versions as follows: +- Stable `com.retroarch` + nightly `com.retroarch.aarch64`, or +- Stable `com.retroarch.aarch64` + nightly `com.retroarch` + +###### Compatibility of `com.retroarch.ra32` on 64-bit ARM Devices + +The 32‑bit `com.retroarch.ra32` package can be installed on most Android devices because they run 64‑bit ARM processors, which are still able to execute 32‑bit code. This setup is mainly useful for development and testing, since new 32‑bit ARM devices are no longer sold +The device must support 32‑bit execution, as verified by: + +``` +adb shell getprop ro.zygote # → zygote64_32 +adb shell getprop ro.product.cpu.abilist # → arm64-v8a,armeabi-v7a,armeabi +``` + +Note: Google Pixel 6a and newer ship with 64‑bit‑only system images (ro.zygote=zygote64, no 32‑bit ABI support). On such devices, pure 32‑bit APKs will fail to install with the error INSTALL_FAILED_NO_MATCHING_ABIS. + #### F-Droid The F-Droid release of [RetroArch](https://f-droid.org/packages/com.retroarch/) offers the recent stable `com.retroarch` (32/64-bit ARM) package can be found in F-Droid for easier automatic updating. From 6157f9b268871bb367977070c8fd87f517ba49bb Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 19 Mar 2026 05:30:19 +0100 Subject: [PATCH 56/57] Update install-android.md minor --- docs/guides/install-android.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index 1cd09fca36..e2b97a76a0 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -171,7 +171,7 @@ adb shell getprop ro.zygote # → zygote64_32 adb shell getprop ro.product.cpu.abilist # → arm64-v8a,armeabi-v7a,armeabi ``` -Note: Google Pixel 6a and newer ship with 64‑bit‑only system images (ro.zygote=zygote64, no 32‑bit ABI support). On such devices, pure 32‑bit APKs will fail to install with the error INSTALL_FAILED_NO_MATCHING_ABIS. +Note: Google Pixel 6a and newer running Android 12 (and later) ship with 64‑bit‑only system images (ro.zygote=zygote64, no 32‑bit ABI support). On such devices, pure 32‑bit APKs will fail to install with the error INSTALL_FAILED_NO_MATCHING_ABIS. #### F-Droid From e5cdd2ac498c0f9b1105f0e7307045cd02607ce3 Mon Sep 17 00:00:00 2001 From: David Hedlund Date: Thu, 19 Mar 2026 07:11:43 +0100 Subject: [PATCH 57/57] Update install-android.md Improve "Compatibility of `com.retroarch.ra32` on 64-bit ARM Devices" section --- docs/guides/install-android.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/guides/install-android.md b/docs/guides/install-android.md index e2b97a76a0..12ad274e39 100644 --- a/docs/guides/install-android.md +++ b/docs/guides/install-android.md @@ -163,15 +163,14 @@ On a typical 64-bit device, install both stable and nightly RetroArch versions a ###### Compatibility of `com.retroarch.ra32` on 64-bit ARM Devices -The 32‑bit `com.retroarch.ra32` package can be installed on most Android devices because they run 64‑bit ARM processors, which are still able to execute 32‑bit code. This setup is mainly useful for development and testing, since new 32‑bit ARM devices are no longer sold -The device must support 32‑bit execution, as verified by: +The 32‑bit `com.retroarch.ra32` package can typically be installed on most Android devices because 64‑bit ARM processors generally include support for running 32‑bit applications, and manufacturers usually configure the system images to enable that compatibility: ``` adb shell getprop ro.zygote # → zygote64_32 adb shell getprop ro.product.cpu.abilist # → arm64-v8a,armeabi-v7a,armeabi ``` -Note: Google Pixel 6a and newer running Android 12 (and later) ship with 64‑bit‑only system images (ro.zygote=zygote64, no 32‑bit ABI support). On such devices, pure 32‑bit APKs will fail to install with the error INSTALL_FAILED_NO_MATCHING_ABIS. +Note: An exception is Google. Google Pixel 6a and newer devices running Android 12 (and later) ship with 64‑bit‑only system images (ro.zygote=zygote64, no 32‑bit ABI support). On such devices, pure 32‑bit APKs will fail to install with the error INSTALL_FAILED_NO_MATCHING_ABIS. #### F-Droid