0

I'm trying to access the device microphone on press with the aim of recording a voice-note. I have tried to access the current permission value but get the following error:

    [VERBOSE-2:ui_dart_state.cc(166)] Unhandled Exception: MissingPluginException(No implementation found for method checkPermissionStatus on channel flutter.baseflow.com/permissions/methods)
#0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:159:7)
<asynchronous suspension>
#1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:334:12)
#2      MethodChannelPermissionHandler.checkPermissionStatus (package:permission_handler_platform_interface/src/method_channel/method_channel_permission_handler.dart:15:41)
#3      PermissionActions.status (package:permission_handler/permission_handler.dart:30:51)
#4      _InsideLeftState.build.<anonymous closure> (package:easy_tiger/screens/order_card_flow/insideleft.dart:19:62)
#5      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:184:24)
#6      TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:524:11)
#7      BaseTapGestureRecognizer._checkUp (pa<…>
[VERBOSE-2:profiler_metrics_ios.mm(184)] Error retrieving thread information: (ipc/send) invalid destination port

Here is the code for my screen:

import 'package:flutter/material.dart';
import 'package:audio_recorder/audio_recorder.dart';
import 'package:permission_handler/permission_handler.dart';

class InsideLeft extends StatefulWidget {
  @override
  _InsideLeftState createState() => _InsideLeftState();
}

class _InsideLeftState extends State<InsideLeft> {
  @override
  Widget build(BuildContext context) {
    return Container(

      child: GestureDetector(
        child: Icon(Icons.mic),
        onTap: () async {
          PermissionStatus mic = await Permission.microphone.status;
          print('microphone permission? ${mic.toString()}');
//          try {
////            if (mic != PermissionStatus.granted) {
////              await Permission.microphone.request();
////            }
////          } catch (e) {
////            print(e);
////          }
        },
      ),
    );
  }


}

Any thoughts how to get around this?

TJMitch95
  • 421
  • 3
  • 7
  • 23

1 Answers1

0

can you please try these things :

Migrate to androidX using android Studio

delete gradle caches

Good post about this topic: Flutter MissingPluginException with several plugins

Abhishek Ghaskata
  • 1,802
  • 2
  • 6
  • 11