mirror of
https://github.com/azahar-emu/azahar.git
synced 2026-06-05 18:23:39 -04:00
android: Fixed crash on Google Play when selecting user dir on SD card
This commit is contained in:
parent
8e8cb3d97a
commit
def69abc11
3 changed files with 21 additions and 14 deletions
|
|
@ -25,6 +25,7 @@ import androidx.fragment.app.DialogFragment
|
||||||
import androidx.preference.PreferenceManager
|
import androidx.preference.PreferenceManager
|
||||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||||
import org.citra.citra_emu.activities.EmulationActivity
|
import org.citra.citra_emu.activities.EmulationActivity
|
||||||
|
import org.citra.citra_emu.utils.BuildUtil
|
||||||
import org.citra.citra_emu.utils.FileUtil
|
import org.citra.citra_emu.utils.FileUtil
|
||||||
import org.citra.citra_emu.utils.Log
|
import org.citra.citra_emu.utils.Log
|
||||||
import org.citra.citra_emu.utils.RemovableStorageHelper
|
import org.citra.citra_emu.utils.RemovableStorageHelper
|
||||||
|
|
@ -637,6 +638,8 @@ object NativeLibrary {
|
||||||
@Keep
|
@Keep
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun getUserDirectory(uriOverride: Uri? = null): String {
|
fun getUserDirectory(uriOverride: Uri? = null): String {
|
||||||
|
BuildUtil.assertNotGooglePlay()
|
||||||
|
|
||||||
val preferences: SharedPreferences =
|
val preferences: SharedPreferences =
|
||||||
PreferenceManager.getDefaultSharedPreferences(CitraApplication.appContext)
|
PreferenceManager.getDefaultSharedPreferences(CitraApplication.appContext)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -568,13 +568,15 @@ class SetupFragment : Fragment() {
|
||||||
return@registerForActivityResult
|
return@registerForActivityResult
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NativeLibrary.getUserDirectory(result) == "") {
|
if (BuildConfig.FLAVOR != "googlePlay") {
|
||||||
SelectUserDirectoryDialogFragment.newInstance(
|
if (NativeLibrary.getUserDirectory(result) == "") {
|
||||||
mainActivity,
|
SelectUserDirectoryDialogFragment.newInstance(
|
||||||
R.string.invalid_selection,
|
mainActivity,
|
||||||
R.string.invalid_user_directory
|
R.string.invalid_selection,
|
||||||
).show(mainActivity.supportFragmentManager, SelectUserDirectoryDialogFragment.TAG)
|
R.string.invalid_user_directory
|
||||||
return@registerForActivityResult
|
).show(mainActivity.supportFragmentManager, SelectUserDirectoryDialogFragment.TAG)
|
||||||
|
return@registerForActivityResult
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CitraDirectoryHelper(requireActivity(), true).showCitraDirectoryDialog(result, pageButtonCallback, checkForButtonState)
|
CitraDirectoryHelper(requireActivity(), true).showCitraDirectoryDialog(result, pageButtonCallback, checkForButtonState)
|
||||||
|
|
|
||||||
|
|
@ -364,13 +364,15 @@ class MainActivity : AppCompatActivity(), ThemeProvider {
|
||||||
return@registerForActivityResult
|
return@registerForActivityResult
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NativeLibrary.getUserDirectory(result) == "") {
|
if (BuildConfig.FLAVOR != "googlePlay") {
|
||||||
SelectUserDirectoryDialogFragment.newInstance(
|
if (NativeLibrary.getUserDirectory(result) == "") {
|
||||||
this,
|
SelectUserDirectoryDialogFragment.newInstance(
|
||||||
R.string.invalid_selection,
|
this,
|
||||||
R.string.invalid_user_directory
|
R.string.invalid_selection,
|
||||||
).show(supportFragmentManager, SelectUserDirectoryDialogFragment.TAG)
|
R.string.invalid_user_directory
|
||||||
return@registerForActivityResult
|
).show(supportFragmentManager, SelectUserDirectoryDialogFragment.TAG)
|
||||||
|
return@registerForActivityResult
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CitraDirectoryHelper(this@MainActivity, permissionsLost)
|
CitraDirectoryHelper(this@MainActivity, permissionsLost)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue