diff --git a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt index d1d56d51c..0f87075f2 100644 --- a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt +++ b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt @@ -114,7 +114,11 @@ class DownloadWorker(private val appContext: Context, workerParams: WorkerParame // Download and verify all files exists totalBytes = files.sumOf { it.size } + PathUtil.getAppDownloadDir(appContext, app.packageName, app.versionCode).createDirectories() + if (files.any { it.type == GPlayFile.FileType.OBB || it.type == GPlayFile.FileType.PATCH }) { + PathUtil.getObbDownloadDir(app.packageName).createDirectories() + } val requestList = getDownloadRequest(files) requestList.forEach { request -> diff --git a/app/src/main/java/com/aurora/store/util/PathUtil.kt b/app/src/main/java/com/aurora/store/util/PathUtil.kt index cb7e67544..7be183997 100644 --- a/app/src/main/java/com/aurora/store/util/PathUtil.kt +++ b/app/src/main/java/com/aurora/store/util/PathUtil.kt @@ -89,6 +89,14 @@ object PathUtil { .toString() + "/Android/obb/" + app.packageName } + fun getObbDownloadDir(packageName: String): Path { + return Path( + Environment.getExternalStorageDirectory().absolutePath, + "/Android/obb/", + packageName + ) + } + fun getObbDownloadFile(app: App, file: File): String { val obbDir = getObbDownloadPath(app) return "$obbDir/${file.name}"