如何在 Flutter App 中接听电话?

Posted

技术标签:

【中文标题】如何在 Flutter App 中接听电话?【英文标题】:How to listen to Phone Calls in flutter App? 【发布时间】:2019-05-09 14:18:43 【问题描述】:

我会尽量用简单的方式问它。 如果我的应用在前台运行并且我当时接到了电话,那么当这种情况发生时,我有什么方法可以调用函数/执行操作。

// My App is open at any random time call recieved
(if call_Received)  // How do I do this bit via dart code?
 sample()


void sample()  // Any random function
  // Some code to perform

【问题讨论】:

【参考方案1】:

由于https://pub.dev/packages/phonecallstate#-example-tab-package 无法正常工作,您可以将新包phone_state_i 0.0.3 与https://pub.dev/packages/phone_state_i#-readme-tab- 一起使用

导入'package:phone_state_i/phone_state_i.dart';

phoneStateCallEvent.listen((PhoneStateCallEvent event) 
      print('Call is Incoming/Connected' + event.stateC);
      //event.stateC has values "true" or "false"
);

【讨论】:

现在,pub.dev pub.dev/packages?q=incoming+phone+call 上似乎有很多可用的软件包@【参考方案2】:

您可以使用https://pub.flutter-io.cn/packages/phone_state_i 但是你必须自定义这个包,因为当你想要构建 apk 时你会收到一个构建错误。所以自定义包并将 compileSdkVersion27 更改为 28。 有关详细信息,您可以查看软件包的问题部分。

【讨论】:

【参考方案3】:

phone_state_i 没有被维护。它不支持 android 嵌入 V2,并且使用了一些已弃用的代码元素,因此不适用于 ios10.0 在撰写本文时,我还没有找到更新的替代方案。

【讨论】:

这没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker.

以上是关于如何在 Flutter App 中接听电话?的主要内容,如果未能解决你的问题,请参考以下文章

如何知道被叫方是不是接听了电话(他拿起电话时的电话状态是啥)

使用 CallKit 接听电话时如何显示 ViewController

adb 如何接听电话

Flutter - 如何创建来电通知?

如何在 Flutter 中使用 Agora 实现 Callkeep?

如何检测电话何时被接听或拒绝