Is there any way to create call recording app in flutter?

Viewed 4848

So, I have tried to develop an application for call recording :

  • By using flutter_sound to record a call and I am detecting call state using phone_state_i but succeeded to record the call with the voice of MICROPHONE only cannot record the voice of other people (INCOMING voice).
  • Then I tried to record calls using android through flutter native integration but unable to achieve. So even here I got succeeded to record only the voice of a microphone.

I guess I am unable to get the concept of VOICE_DOWNLINK and VOICE_UPLINK. And got to know that VOICE_CALL is deprecated. So, I am badly stuck and need some expert advice.

1 Answers

It seems that until now, there is still no package available for this functionality.

That kind of functionality would have to be provided by a flutter plugin that integrates with native call recording APIs. That kind of a bridge is possible on older versions of Android but it became much harder after Marshmallow - Google removed the official call recording API.

The only 100% working/future proof implementations of call recording on Android and iOS would require the devices to be rooted/jailbroken.

Check also this SO post.

In short, mentioned via comments, you’ll have to refer to https://flutter.dev/docs/development/platform-integration/platform-channels to do it yourself by implementing platform-specific code such as CallKit/ConnectionService.

First, because there’s currently likely no Flutter library that has already conveniently packaged this up for you, at least not at https://pub.dev/flutter, so this is why you need to do it yourself.

Now, assuming all the restrictions, permissions, rooting, jailbreaking, etc. poses no issue to you, then you would need to implement these APIs natively in iOS/Android first

Related