mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-04-24 14:24:54 +00:00
Android: Ask for RECORD_AUDIO permission
This commit is contained in:
parent
78f37429ac
commit
2dd01bae6e
2 changed files with 17 additions and 0 deletions
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
package org.dolphinemu.dolphinemu.features.settings.ui.viewholder
|
package org.dolphinemu.dolphinemu.features.settings.ui.viewholder
|
||||||
|
|
||||||
|
import android.Manifest
|
||||||
|
import android.app.Activity
|
||||||
|
import android.content.pm.PackageManager
|
||||||
|
import android.os.Build
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.CompoundButton
|
import android.widget.CompoundButton
|
||||||
import org.dolphinemu.dolphinemu.databinding.ListItemSettingSwitchBinding
|
import org.dolphinemu.dolphinemu.databinding.ListItemSettingSwitchBinding
|
||||||
|
@ -10,6 +14,7 @@ import org.dolphinemu.dolphinemu.features.settings.model.view.SettingsItem
|
||||||
import org.dolphinemu.dolphinemu.features.settings.model.view.SwitchSetting
|
import org.dolphinemu.dolphinemu.features.settings.model.view.SwitchSetting
|
||||||
import org.dolphinemu.dolphinemu.features.settings.ui.SettingsAdapter
|
import org.dolphinemu.dolphinemu.features.settings.ui.SettingsAdapter
|
||||||
import org.dolphinemu.dolphinemu.utils.DirectoryInitialization
|
import org.dolphinemu.dolphinemu.utils.DirectoryInitialization
|
||||||
|
import org.dolphinemu.dolphinemu.utils.PermissionsHandler
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
|
@ -57,6 +62,17 @@ class SwitchSettingViewHolder(
|
||||||
binding.settingSwitch.isEnabled = false
|
binding.settingSwitch.isEnabled = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (setting.setting === BooleanSetting.MAIN_EMULATE_WII_SPEAK && isChecked) {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
|
||||||
|
itemView.context.checkSelfPermission(Manifest.permission.RECORD_AUDIO)
|
||||||
|
!= PackageManager.PERMISSION_GRANTED) {
|
||||||
|
val settingsActivity = itemView.context as Activity
|
||||||
|
settingsActivity.requestPermissions(
|
||||||
|
arrayOf(Manifest.permission.RECORD_AUDIO),
|
||||||
|
PermissionsHandler.REQUEST_CODE_RECORD_AUDIO)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
adapter.onBooleanClick(setting, binding.settingSwitch.isChecked)
|
adapter.onBooleanClick(setting, binding.settingSwitch.isChecked)
|
||||||
|
|
||||||
setStyle(binding.textSettingName, setting)
|
setStyle(binding.textSettingName, setting)
|
||||||
|
|
|
@ -15,6 +15,7 @@ import static android.Manifest.permission.WRITE_EXTERNAL_STORAGE;
|
||||||
public class PermissionsHandler
|
public class PermissionsHandler
|
||||||
{
|
{
|
||||||
public static final int REQUEST_CODE_WRITE_PERMISSION = 500;
|
public static final int REQUEST_CODE_WRITE_PERMISSION = 500;
|
||||||
|
public static final int REQUEST_CODE_RECORD_AUDIO = 501;
|
||||||
private static boolean sWritePermissionDenied = false;
|
private static boolean sWritePermissionDenied = false;
|
||||||
|
|
||||||
public static void requestWritePermission(final FragmentActivity activity)
|
public static void requestWritePermission(final FragmentActivity activity)
|
||||||
|
|
Loading…
Add table
Reference in a new issue