From 8e5f360e2c480381ab74302628059d6be979685c Mon Sep 17 00:00:00 2001 From: Utkarsh Dalal Date: Sat, 25 Jul 2026 21:34:29 -0400 Subject: [PATCH 1/6] Change external location to speed up external boots --- .../app/gamenative/service/DownloadService.kt | 54 ++++++++++++++++++- .../screen/settings/SettingsGroupInterface.kt | 10 ++-- .../java/app/gamenative/utils/StorageUtils.kt | 26 +++++++++ 3 files changed, 84 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/app/gamenative/service/DownloadService.kt b/app/src/main/java/app/gamenative/service/DownloadService.kt index 511f9e55f4..1024003f39 100644 --- a/app/src/main/java/app/gamenative/service/DownloadService.kt +++ b/app/src/main/java/app/gamenative/service/DownloadService.kt @@ -2,6 +2,7 @@ package app.gamenative.service import android.content.Context import android.os.Environment +import app.gamenative.PrefManager import app.gamenative.utils.StorageUtils import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext @@ -37,10 +38,59 @@ object DownloadService { baseExternalAppDirPath = extFiles?.parentFile?.path ?: "" val sm = context.getSystemService(android.os.storage.StorageManager::class.java) - externalVolumePaths = StorageUtils.getAllExternalFilesDirs(context) + val appFilesDirs = StorageUtils.getAllExternalFilesDirs(context) .filter { Environment.getExternalStorageState(it) == Environment.MEDIA_MOUNTED } .filter { sm?.getStorageVolume(it)?.isPrimary != true } - .map { it.absolutePath } + // both layouts per volume: legacy Android/data (existing installs) + public root (new installs) + externalVolumePaths = appFilesDirs + .flatMap { dir -> listOfNotNull(dir.absolutePath, StorageUtils.publicInstallRoot(dir)?.absolutePath) } + .distinct() + + migrateExternalStoragePath() + } + + // Android/data paths pay a ~1000x FUSE metadata penalty (MediaProvider disables kernel + // caching there); repoint the install pref at the public root so new installs avoid it + private fun migrateExternalStoragePath() { + val pref = PrefManager.externalStoragePath + if (pref.isBlank()) return + val public: File + val legacy: File? + if (pref.contains("/Android/data/")) { + legacy = File(pref) + public = StorageUtils.publicInstallRoot(legacy) ?: return + if (!StorageUtils.ensureInstallRoot(public)) return + Timber.i("Migrating external install root from $pref to ${public.absolutePath}") + PrefManager.externalStoragePath = public.absolutePath + } else { + // pref already migrated; legacy content may still need moving + public = File(pref) + legacy = externalVolumePaths.map(::File).firstOrNull { + it.absolutePath.contains("/Android/data/") && + StorageUtils.publicInstallRoot(it)?.absolutePath == public.absolutePath + } + if (legacy == null || !StorageUtils.ensureInstallRoot(public)) return + } + moveExternalContent(legacy, public) + } + + // rename(2) only — same-volume moves are instant metadata ops even for huge libraries; + // on failure the game stays in place and the dual-root scan keeps finding it + private fun moveExternalContent(legacyRoot: File, publicRoot: File) { + for (name in listOf("Steam", "GOG", "Epic", "Amazon")) { + val src = File(legacyRoot, name) + val dst = File(publicRoot, name) + if (!src.isDirectory) continue + if (dst.exists()) { + Timber.w("Not moving $src: $dst already exists") + continue + } + if (src.renameTo(dst)) { + Timber.i("Moved $src to $dst") + } else { + Timber.w("Could not move $src to $dst; leaving in place") + } + } } @Synchronized diff --git a/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt b/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt index b8175a6ed3..5a992888e9 100644 --- a/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt +++ b/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt @@ -561,7 +561,7 @@ fun SettingsGroupInterface( useExternalStorage = it PrefManager.useExternalStorage = it if (it && dirs.isNotEmpty()) { - PrefManager.externalStoragePath = dirs[0].absolutePath + PrefManager.externalStoragePath = StorageUtils.preferredInstallRoot(dirs[0]) } }, ) @@ -569,8 +569,10 @@ fun SettingsGroupInterface( // Currently selected item var selectedIndex by rememberSaveable { mutableStateOf( - dirs.indexOfFirst { it.absolutePath == PrefManager.externalStoragePath } - .takeIf { it >= 0 } ?: 0, + dirs.indexOfFirst { dir -> + dir.absolutePath == PrefManager.externalStoragePath || + StorageUtils.publicInstallRoot(dir)?.absolutePath == PrefManager.externalStoragePath + }.takeIf { it >= 0 } ?: 0, ) } SettingsListDropdown( @@ -579,7 +581,7 @@ fun SettingsGroupInterface( value = selectedIndex, onItemSelected = { idx -> selectedIndex = idx - PrefManager.externalStoragePath = dirs[idx].absolutePath + PrefManager.externalStoragePath = StorageUtils.preferredInstallRoot(dirs[idx]) }, colors = settingsTileColorsAlt(), ) diff --git a/app/src/main/java/app/gamenative/utils/StorageUtils.kt b/app/src/main/java/app/gamenative/utils/StorageUtils.kt index 4bade589e3..8787245226 100644 --- a/app/src/main/java/app/gamenative/utils/StorageUtils.kt +++ b/app/src/main/java/app/gamenative/utils/StorageUtils.kt @@ -98,6 +98,32 @@ object StorageUtils { return result } + private const val PUBLIC_INSTALL_DIR_NAME = "GameNative" + + /** + * Maps an app-specific dir (/Android/data//files) to a public install root + * (/GameNative). MediaProvider disables FUSE kernel caching under Android/data, + * making per-open metadata ops ~1000x slower there; public dirs get normal dcache treatment. + */ + fun publicInstallRoot(appFilesDir: File): File? { + val path = appFilesDir.absolutePath + val idx = path.indexOf("/Android/data/") + if (idx <= 0) return null + return File(path.substring(0, idx), PUBLIC_INSTALL_DIR_NAME) + } + + fun ensureInstallRoot(dir: File): Boolean { + if (!dir.isDirectory && !dir.mkdirs()) return false + runCatching { File(dir, ".nomedia").createNewFile() } + return true + } + + fun preferredInstallRoot(appFilesDir: File): String { + val public = publicInstallRoot(appFilesDir) + if (public != null && ensureInstallRoot(public)) return public.absolutePath + return appFilesDir.absolutePath + } + /** * Gets all app-specific external files directories, using StorageManager as a fallback * for cases where context.getExternalFilesDirs(null) might return null or incomplete results From 3c7fd274d97cb2e6e0963097bb942d9ea7b335cc Mon Sep 17 00:00:00 2001 From: Utkarsh Dalal Date: Sun, 26 Jul 2026 18:20:28 -0400 Subject: [PATCH 2/6] Updated shims for external storage --- app/src/main/assets/redirect.tzst | Bin 17041 -> 33496 bytes .../ui/screen/xserver/XServerScreen.kt | 6 ++++++ .../xenvironment/ImageFsInstaller.java | 2 +- .../modern/assets/libredirect-bionic-wx.so | Bin 41528 -> 53800 bytes 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/assets/redirect.tzst b/app/src/main/assets/redirect.tzst index 3e9bc47bd1309290266bcda7009099e84e073131..dccc7e590ac872a43d9fe2f1105ef6d355f54718 100644 GIT binary patch literal 33496 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 ANB{r; diff --git a/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt b/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt index ee2220c9ac..0266fd28df 100644 --- a/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt +++ b/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt @@ -3658,6 +3658,12 @@ private fun setupXEnvironment( envVars.remove("DXVK_FRAME_RATE") envVars.remove("VKD3D_FRAME_RATE") if (!envVars.has("WINEESYNC")) envVars.put("WINEESYNC", "1") + + val ffpGameDir = runCatching { + File(SteamService.getAppDirPath(ContainerUtils.extractGameIdFromContainerId(appId))).canonicalFile.path + }.getOrDefault("") + if (ffpGameDir.startsWith("/storage/")) envVars.put("FFP_ENABLE", "1") + val graphicsDriverConfig = KeyValueSet(container.getGraphicsDriverConfig()) if (graphicsDriverConfig.get("version").lowercase(Locale.getDefault()).contains("gen8")) { var tuDebug = envVars.get("TU_DEBUG") diff --git a/app/src/main/java/com/winlator/xenvironment/ImageFsInstaller.java b/app/src/main/java/com/winlator/xenvironment/ImageFsInstaller.java index a21237db97..23807b0f4c 100644 --- a/app/src/main/java/com/winlator/xenvironment/ImageFsInstaller.java +++ b/app/src/main/java/com/winlator/xenvironment/ImageFsInstaller.java @@ -43,7 +43,7 @@ import java.util.concurrent.atomic.AtomicLong; public abstract class ImageFsInstaller { - public static final byte LATEST_VERSION = 28; + public static final byte LATEST_VERSION = 29; private static void resetContainerImgVersions(Context context) { ContainerManager manager = new ContainerManager(context); diff --git a/app/src/modern/assets/libredirect-bionic-wx.so b/app/src/modern/assets/libredirect-bionic-wx.so index 5722cc60526e3db35669a70cf3f803f09569fc29..b4184771cc99f6d7ad52d8488d2afcf69476b81e 100755 GIT binary patch literal 53800 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

O#}ZPl+_jH|ygkD{t9x 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 Date: Sun, 26 Jul 2026 18:42:25 -0400 Subject: [PATCH 3/6] Migrate external storage on launch of game --- .../app/gamenative/service/DownloadService.kt | 38 ++----------------- .../app/gamenative/utils/ContainerUtils.kt | 8 ++-- .../java/app/gamenative/utils/StorageUtils.kt | 23 +++++++++++ 3 files changed, 31 insertions(+), 38 deletions(-) diff --git a/app/src/main/java/app/gamenative/service/DownloadService.kt b/app/src/main/java/app/gamenative/service/DownloadService.kt index 1024003f39..c05e72541d 100644 --- a/app/src/main/java/app/gamenative/service/DownloadService.kt +++ b/app/src/main/java/app/gamenative/service/DownloadService.kt @@ -53,43 +53,11 @@ object DownloadService { // caching there); repoint the install pref at the public root so new installs avoid it private fun migrateExternalStoragePath() { val pref = PrefManager.externalStoragePath - if (pref.isBlank()) return - val public: File - val legacy: File? - if (pref.contains("/Android/data/")) { - legacy = File(pref) - public = StorageUtils.publicInstallRoot(legacy) ?: return - if (!StorageUtils.ensureInstallRoot(public)) return + if (pref.isBlank() || !pref.contains("/Android/data/")) return + val public = StorageUtils.publicInstallRoot(File(pref)) ?: return + if (StorageUtils.ensureInstallRoot(public)) { Timber.i("Migrating external install root from $pref to ${public.absolutePath}") PrefManager.externalStoragePath = public.absolutePath - } else { - // pref already migrated; legacy content may still need moving - public = File(pref) - legacy = externalVolumePaths.map(::File).firstOrNull { - it.absolutePath.contains("/Android/data/") && - StorageUtils.publicInstallRoot(it)?.absolutePath == public.absolutePath - } - if (legacy == null || !StorageUtils.ensureInstallRoot(public)) return - } - moveExternalContent(legacy, public) - } - - // rename(2) only — same-volume moves are instant metadata ops even for huge libraries; - // on failure the game stays in place and the dual-root scan keeps finding it - private fun moveExternalContent(legacyRoot: File, publicRoot: File) { - for (name in listOf("Steam", "GOG", "Epic", "Amazon")) { - val src = File(legacyRoot, name) - val dst = File(publicRoot, name) - if (!src.isDirectory) continue - if (dst.exists()) { - Timber.w("Not moving $src: $dst already exists") - continue - } - if (src.renameTo(dst)) { - Timber.i("Moved $src to $dst") - } else { - Timber.w("Could not move $src to $dst; leaving in place") - } } } diff --git a/app/src/main/java/app/gamenative/utils/ContainerUtils.kt b/app/src/main/java/app/gamenative/utils/ContainerUtils.kt index 476fdbb062..bfca448e3a 100644 --- a/app/src/main/java/app/gamenative/utils/ContainerUtils.kt +++ b/app/src/main/java/app/gamenative/utils/ContainerUtils.kt @@ -1041,11 +1041,13 @@ object ContainerUtils { } } - if (gameFolderPath != null) { + val resolvedGameFolderPath = StorageUtils.migrateLegacyGameDir(gameFolderPath) + + if (resolvedGameFolderPath != null) { // Check if A: drive is already mapped to the correct path var hasCorrectADrive = false for (drive in Container.drivesIterator(container.drives)) { - if (drive[0] == "A" && drive[1] == gameFolderPath) { + if (drive[0] == "A" && drive[1] == resolvedGameFolderPath) { hasCorrectADrive = true break } @@ -1056,7 +1058,7 @@ object ContainerUtils { val currentDrives = container.drives // Rebuild drives string, excluding existing A: drive and adding new one val drivesBuilder = StringBuilder() - drivesBuilder.append("A:$gameFolderPath") + drivesBuilder.append("A:$resolvedGameFolderPath") // Add all other drives (excluding A:) for (drive in Container.drivesIterator(currentDrives)) { diff --git a/app/src/main/java/app/gamenative/utils/StorageUtils.kt b/app/src/main/java/app/gamenative/utils/StorageUtils.kt index 8787245226..b861c1eb9d 100644 --- a/app/src/main/java/app/gamenative/utils/StorageUtils.kt +++ b/app/src/main/java/app/gamenative/utils/StorageUtils.kt @@ -124,6 +124,29 @@ object StorageUtils { return appFilesDir.absolutePath } + fun migrateLegacyGameDir(path: String?): String? { + if (path.isNullOrBlank()) return path + val idx = path.indexOf("/Android/data/") + if (idx <= 0) return path + val filesIdx = path.indexOf("/files/", idx) + if (filesIdx < 0) return path + val legacyRoot = File(path.substring(0, filesIdx + "/files".length)) + val rel = path.substring(filesIdx + "/files/".length) + val src = File(path) + if (!src.isDirectory) return path + val publicRoot = publicInstallRoot(legacyRoot) ?: return path + val dst = File(publicRoot, rel) + if (dst.exists() || !ensureInstallRoot(publicRoot)) return path + dst.parentFile?.mkdirs() + return if (src.renameTo(dst)) { + Timber.i("Migrated game dir $path to ${dst.absolutePath}") + dst.absolutePath + } else { + Timber.w("Could not migrate $path; leaving in place") + path + } + } + /** * Gets all app-specific external files directories, using StorageManager as a fallback * for cases where context.getExternalFilesDirs(null) might return null or incomplete results From bad4d393a005f4d66e4993f5e4ba9b14228d3474 Mon Sep 17 00:00:00 2001 From: Utkarsh Dalal Date: Wed, 29 Jul 2026 09:42:28 -0400 Subject: [PATCH 4/6] made ffp store-agnostic --- .../java/app/gamenative/ui/screen/xserver/XServerScreen.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt b/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt index 0266fd28df..77cdb1848b 100644 --- a/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt +++ b/app/src/main/java/app/gamenative/ui/screen/xserver/XServerScreen.kt @@ -3660,8 +3660,9 @@ private fun setupXEnvironment( if (!envVars.has("WINEESYNC")) envVars.put("WINEESYNC", "1") val ffpGameDir = runCatching { - File(SteamService.getAppDirPath(ContainerUtils.extractGameIdFromContainerId(appId))).canonicalFile.path - }.getOrDefault("") + Container.drivesIterator(container.drives).asSequence() + .firstOrNull { it[0] == "A" }?.let { File(it[1]).canonicalFile.path } + }.getOrNull() ?: "" if (ffpGameDir.startsWith("/storage/")) envVars.put("FFP_ENABLE", "1") val graphicsDriverConfig = KeyValueSet(container.getGraphicsDriverConfig()) From 503920262812ed910a5f6609ee40844bdbc25571 Mon Sep 17 00:00:00 2001 From: Utkarsh Dalal Date: Wed, 29 Jul 2026 10:22:40 -0400 Subject: [PATCH 5/6] Env-gate fuse fastpath shim via FFP_ENABLE/FFP_MARKERS; ship rebuilt shims --- app/src/main/assets/redirect.tzst | Bin 33496 -> 31277 bytes .../ui/screen/xserver/XServerScreen.kt | 5 ++++- .../modern/assets/libredirect-bionic-wx.so | Bin 53800 -> 67368 bytes 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/assets/redirect.tzst b/app/src/main/assets/redirect.tzst index dccc7e590ac872a43d9fe2f1105ef6d355f54718..79c13712345f9210fbb3110ea22eef94d5ca7d02 100644 GIT binary patch literal 31277 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 z%0DHAGEOtZSWRGg?Xku@bHfQji=00BI$*edr4 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 literal 33496 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 b>M7o-A3K7mdmE`s<^K=1Ll$&^F#rDo%hg&s literal 53800 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 Date: Wed, 29 Jul 2026 11:59:08 -0400 Subject: [PATCH 6/6] Handle external storage speed up for non-steam games as well. --- .../service/amazon/AmazonService.kt | 10 ++++++++++ .../gamenative/service/epic/EpicService.kt | 9 +++++++++ .../app/gamenative/service/gog/GOGService.kt | 8 ++++++++ .../screen/settings/SettingsGroupInterface.kt | 2 +- .../app/gamenative/utils/ContainerUtils.kt | 19 ++++++++++++++++++- .../java/app/gamenative/utils/StorageUtils.kt | 4 ++-- 6 files changed, 48 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/app/gamenative/service/amazon/AmazonService.kt b/app/src/main/java/app/gamenative/service/amazon/AmazonService.kt index 77433b8f55..1b14cb4bad 100644 --- a/app/src/main/java/app/gamenative/service/amazon/AmazonService.kt +++ b/app/src/main/java/app/gamenative/service/amazon/AmazonService.kt @@ -316,6 +316,16 @@ class AmazonService : Service() { return if (game.isInstalled && game.installPath.isNotEmpty()) game.installPath else null } + /** Persist a new install path for [appId] after an on-disk migration. */ + fun updateInstallPath(appId: Int, path: String) { + runBlocking(Dispatchers.IO) { + val game = instance?.amazonManager?.getGameByAppId(appId) ?: return@runBlocking + if (game.isInstalled && game.installPath != path) { + instance?.amazonManager?.markInstalled(game.productId, path, game.installSize, game.versionId) + } + } + } + /** Convert appId to productId via DB lookup. */ fun getProductIdByAppId(appId: Int): String? { return getAmazonGameByAppId(appId)?.productId diff --git a/app/src/main/java/app/gamenative/service/epic/EpicService.kt b/app/src/main/java/app/gamenative/service/epic/EpicService.kt index 9a52f106e3..e016eb6813 100644 --- a/app/src/main/java/app/gamenative/service/epic/EpicService.kt +++ b/app/src/main/java/app/gamenative/service/epic/EpicService.kt @@ -366,6 +366,15 @@ class EpicService : Service() { } } + fun updateInstallPath(appId: Int, path: String) { + runBlocking(Dispatchers.IO) { + val game = getInstance()?.epicManager?.getGameById(appId) ?: return@runBlocking + if (game.installPath != path) { + getInstance()?.epicManager?.updateGame(game.copy(installPath = path)) + } + } + } + suspend fun getInstalledExe(appId: Int): String { return getInstance()?.epicManager?.getInstalledExe(appId) ?: "" } diff --git a/app/src/main/java/app/gamenative/service/gog/GOGService.kt b/app/src/main/java/app/gamenative/service/gog/GOGService.kt index e114509a87..003d8389f4 100644 --- a/app/src/main/java/app/gamenative/service/gog/GOGService.kt +++ b/app/src/main/java/app/gamenative/service/gog/GOGService.kt @@ -301,6 +301,14 @@ class GOGService : Service() { } } + fun updateInstallPath(gameId: String, path: String) { + runBlocking(Dispatchers.IO) { + val manager = getInstance()?.gogManager ?: return@runBlocking + val game = manager.getGameFromDbById(gameId) ?: return@runBlocking + if (game.installPath != path) manager.updateGame(game.copy(installPath = path)) + } + } + fun verifyInstallation(gameId: String): Pair { return getInstance()?.gogManager?.verifyInstallation(gameId) ?: Pair(false, "Service not available") diff --git a/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt b/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt index 5a992888e9..f288a6a618 100644 --- a/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt +++ b/app/src/main/java/app/gamenative/ui/screen/settings/SettingsGroupInterface.kt @@ -567,7 +567,7 @@ fun SettingsGroupInterface( ) if (useExternalStorage) { // Currently selected item - var selectedIndex by rememberSaveable { + var selectedIndex by rememberSaveable(dirs) { mutableStateOf( dirs.indexOfFirst { dir -> dir.absolutePath == PrefManager.externalStoragePath || diff --git a/app/src/main/java/app/gamenative/utils/ContainerUtils.kt b/app/src/main/java/app/gamenative/utils/ContainerUtils.kt index 98b709bd64..e2f465f1fd 100644 --- a/app/src/main/java/app/gamenative/utils/ContainerUtils.kt +++ b/app/src/main/java/app/gamenative/utils/ContainerUtils.kt @@ -1043,7 +1043,24 @@ object ContainerUtils { } } - val resolvedGameFolderPath = StorageUtils.migrateLegacyGameDir(gameFolderPath) + val resolvedGameFolderPath = if (gameSource == GameSource.CUSTOM_GAME) { + gameFolderPath + } else { + StorageUtils.resolveLegacyGameDir(gameFolderPath) + } + + if (resolvedGameFolderPath != null && resolvedGameFolderPath != gameFolderPath) { + when (gameSource) { + GameSource.GOG -> + GOGService.updateInstallPath(extractGameIdFromContainerId(appId).toString(), resolvedGameFolderPath) + GameSource.EPIC -> + EpicService.updateInstallPath(extractGameIdFromContainerId(appId), resolvedGameFolderPath) + GameSource.AMAZON -> + runCatching { extractGameIdFromContainerId(appId) }.getOrNull() + ?.let { AmazonService.updateInstallPath(it, resolvedGameFolderPath) } + else -> {} + } + } if (resolvedGameFolderPath != null) { // Check if A: drive is already mapped to the correct path diff --git a/app/src/main/java/app/gamenative/utils/StorageUtils.kt b/app/src/main/java/app/gamenative/utils/StorageUtils.kt index b861c1eb9d..103290cc1f 100644 --- a/app/src/main/java/app/gamenative/utils/StorageUtils.kt +++ b/app/src/main/java/app/gamenative/utils/StorageUtils.kt @@ -124,7 +124,7 @@ object StorageUtils { return appFilesDir.absolutePath } - fun migrateLegacyGameDir(path: String?): String? { + fun resolveLegacyGameDir(path: String?): String? { if (path.isNullOrBlank()) return path val idx = path.indexOf("/Android/data/") if (idx <= 0) return path @@ -133,9 +133,9 @@ object StorageUtils { val legacyRoot = File(path.substring(0, filesIdx + "/files".length)) val rel = path.substring(filesIdx + "/files/".length) val src = File(path) - if (!src.isDirectory) return path val publicRoot = publicInstallRoot(legacyRoot) ?: return path val dst = File(publicRoot, rel) + if (!src.isDirectory) return if (dst.isDirectory) dst.absolutePath else path if (dst.exists() || !ensureInstallRoot(publicRoot)) return path dst.parentFile?.mkdirs() return if (src.renameTo(dst)) {