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
|
||||
|
||||
import android.Manifest
|
||||
import android.app.Activity
|
||||
import android.content.pm.PackageManager
|
||||
import android.os.Build
|
||||
import android.view.View
|
||||
import android.widget.CompoundButton
|
||||
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.ui.SettingsAdapter
|
||||
import org.dolphinemu.dolphinemu.utils.DirectoryInitialization
|
||||
import org.dolphinemu.dolphinemu.utils.PermissionsHandler
|
||||
import java.io.File
|
||||
import java.util.*
|
||||
|
||||
|
@ -57,6 +62,17 @@ class SwitchSettingViewHolder(
|
|||
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)
|
||||
|
||||
setStyle(binding.textSettingName, setting)
|
||||
|
|
|
@ -15,6 +15,7 @@ import static android.Manifest.permission.WRITE_EXTERNAL_STORAGE;
|
|||
public class PermissionsHandler
|
||||
{
|
||||
public static final int REQUEST_CODE_WRITE_PERMISSION = 500;
|
||||
public static final int REQUEST_CODE_RECORD_AUDIO = 501;
|
||||
private static boolean sWritePermissionDenied = false;
|
||||
|
||||
public static void requestWritePermission(final FragmentActivity activity)
|
||||
|
|
Loading…
Add table
Reference in a new issue