mirror of
https://github.com/Lime3DS/Lime3DS.git
synced 2026-06-03 21:55:00 -06:00
android: Fix compression and decompression on vanilla build (#1939)
This commit is contained in:
parent
9b045bf837
commit
d4e9daa739
@ -36,6 +36,7 @@ import org.citra.citra_emu.adapters.GameAdapter
|
|||||||
import org.citra.citra_emu.databinding.FragmentGamesBinding
|
import org.citra.citra_emu.databinding.FragmentGamesBinding
|
||||||
import org.citra.citra_emu.features.settings.model.Settings
|
import org.citra.citra_emu.features.settings.model.Settings
|
||||||
import org.citra.citra_emu.model.Game
|
import org.citra.citra_emu.model.Game
|
||||||
|
import org.citra.citra_emu.utils.BuildUtil
|
||||||
import org.citra.citra_emu.viewmodel.CompressProgressDialogViewModel
|
import org.citra.citra_emu.viewmodel.CompressProgressDialogViewModel
|
||||||
import org.citra.citra_emu.viewmodel.GamesViewModel
|
import org.citra.citra_emu.viewmodel.GamesViewModel
|
||||||
import org.citra.citra_emu.viewmodel.HomeViewModel
|
import org.citra.citra_emu.viewmodel.HomeViewModel
|
||||||
@ -60,8 +61,14 @@ class GamesFragment : Fragment() {
|
|||||||
companion object {
|
companion object {
|
||||||
fun doCompression(fragment: Fragment, gamesViewModel: GamesViewModel, inputPath: String?, outputUri: Uri?, shouldCompress: Boolean) {
|
fun doCompression(fragment: Fragment, gamesViewModel: GamesViewModel, inputPath: String?, outputUri: Uri?, shouldCompress: Boolean) {
|
||||||
if (outputUri != null) {
|
if (outputUri != null) {
|
||||||
|
val outputPath: String =
|
||||||
|
if (!BuildUtil.isGooglePlayBuild) {
|
||||||
|
"!" + NativeLibrary.getNativePath(outputUri)
|
||||||
|
} else {
|
||||||
|
outputUri.toString()
|
||||||
|
}
|
||||||
CompressProgressDialogViewModel.reset()
|
CompressProgressDialogViewModel.reset()
|
||||||
val dialog = CompressProgressDialogFragment.newInstance(shouldCompress, outputUri.toString())
|
val dialog = CompressProgressDialogFragment.newInstance(shouldCompress, outputPath)
|
||||||
dialog.showNow(
|
dialog.showNow(
|
||||||
fragment.requireActivity().supportFragmentManager,
|
fragment.requireActivity().supportFragmentManager,
|
||||||
CompressProgressDialogFragment.TAG
|
CompressProgressDialogFragment.TAG
|
||||||
@ -69,9 +76,9 @@ class GamesFragment : Fragment() {
|
|||||||
|
|
||||||
fragment.lifecycleScope.launch(Dispatchers.IO) {
|
fragment.lifecycleScope.launch(Dispatchers.IO) {
|
||||||
val status = if (shouldCompress) {
|
val status = if (shouldCompress) {
|
||||||
NativeLibrary.compressFile(inputPath, outputUri.toString())
|
NativeLibrary.compressFile(inputPath, outputPath)
|
||||||
} else {
|
} else {
|
||||||
NativeLibrary.decompressFile(inputPath, outputUri.toString())
|
NativeLibrary.decompressFile(inputPath, outputPath)
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment.requireActivity().runOnUiThread {
|
fragment.requireActivity().runOnUiThread {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user