请求麦克风权限重新启动活动

时间:2021-04-04 21:55:13

标签: flutter kotlin

class MainActivity : FlutterActivity() {

然后我在 MainActivity 的一个函数中调用它:

            ActivityCompat.requestPermissions(
                    activity,
                    arrayOf(Manifest.permission.RECORD_AUDIO),
                    MY_PERMISSIONS_RECORD_AUDIO
            )

但是,当我调用它时,它不是简单地显示麦克风权限弹出窗口,而是重新启动 flutter 活动,然后显示弹出窗口。

如何让它只显示弹出窗口?

1 个答案:

答案 0 :(得分:1)

您应该避免在 MainActivity 内请求许可。最简单的方法是使用 permission_handler Flutter 包并从您的 Flutter/Dart 代码中调用它。

if(await Permission.microphone.request().isGranted) {
  // use microphone
}

如果用户已授予权限,这将请求权限并执行大括号内的块。