基于Flutter的呼叫记录应用程序,具有本机UI集成

Jun*_*ikh 10 android ios flutter callkit call-recording

我正在尝试使用flutter,CallKit(iOS)和ConnectionService(Android)使电话录音与本机UI集成一起使用。

由于没有关于将flutter与CallKit和ConnectionService或任何其他服务集成以实现无需root访问权限或越狱即可进行类似于系统的呼叫记录的指南,因此这个问题已经存在。有许多可用于越狱设备的应用程序,而android本身支持呼叫记录,但是没有具体的指南来实现使用flutter的实现。

将flutter 1.7与AndroidX支持结合使用可实现棉花糖+ ConnectionService的向后兼容性。

预期结果是自动记录呼叫或提示用户在有来电时进行记录。

当前根本无法做到这一点,也许我缺少文档中必不可少的东西,或者我没有足够的专门知识来成功执行使用flutter创建系统支持的呼叫记录应用程序。

TWL*_*TWL 4

\n

由于没有将 flutter 与 CallKit 和 ConnectionService 集成的指南......

\n
\n\n

简而言之,通过注释提到,您\xe2\x80\x99必须参考https://flutter.dev/docs/development/platform-integration/platform-channels通过实现特定于平台的代码(例如CallKit)来自己完成/连接服务。

\n\n

首先,因为目前\xe2\x80\x99s 可能没有 Flutter 库已经方便地为你打包了这个,至少在https://pub.dev/flutter上没有,所以这就是你需要自己做的原因。

\n\n

现在,假设所有限制、权限、root、越狱等对您来说都没有问题,那么您需要首先在 iOS/Android 中本地实现这些 API,例如Android

\n\n
@Override\npublic void onMethodCall(MethodCall call, Result result) {\n    if (call.method.equals("recordCall")) {\n        result.success(recordCall());\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后您可以从 Flutter 调用它们

\n\n
_recordCall() {\n  var recording = await platform.invokeMethod(\'recordCall\');\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

所以不要\xe2\x80\x99考虑如何在Flutter中做到这一点,上面是简单的部分。

\n\n

你的观点应该是:如何在 iOS/Android 上做到这一点,因为神奇之处在于recordCall()

\n