当前位置: 首页 > 知识库问答 >
问题:

带有Agora Flatter的视频通话接受屏幕

岳卓君
2023-03-14

我正在尝试用Agora构建一个视频通话应用程序,我需要在用户呼叫时显示像WhatsApp这样的接受屏幕,如果应用程序退出,我需要在用户呼叫时显示呼叫屏幕,我尝试了很多东西,但都不起作用,我试图做我颤抖,但这方面没有太多信息,请帮助我

共有2个答案

廖招
2023-03-14

您可以尝试WorkManager插件。

当应用程序关闭时,您可以向操作系统注册回拨功能。

const myTask = "syncWithTheBackEnd";

void main() {
  Workmanager.initialize(callbackDispatcher);
  Workmanager.registerOneOffTask(
    "1",
    myTask, //This is the value that will be returned in the callbackDispatcher
    initialDelay: Duration(minutes: 5),
    constraints: WorkManagerConstraintConfig(
      requiresCharging: true,
      networkType: NetworkType.connected,
    ),
  );
  runApp(MyApp());
}

void callbackDispatcher() {
  Workmanager.executeTask((task) {
    switch (task) {
      case myTask:
        print("this method was called from native!");
        break;
      case Workmanager.iOSBackgroundTask:
        print("iOS background fetch delegate ran");
        break;
    }

    //Return true when the task executed successfully or not
    return Future.value(true);
  });
}

也许这能帮到你。

完整文章中等文章

史逸春
2023-03-14

第一件事。在深入研究解决方案之前,您需要了解一些概念。实际上没有现成的解决方案。

你需要同时使用一些东西:

  • 使用推送通知来唤醒您的应用:
    https://pub.dev/packages/firebase_messaging
    使用推送通知来启动您的应用,请参考以下文章:
    https://stackoverflow.com/a/48405551/4335775
  • 使用CallKit(IOS)或ConnectionServices(Android)来显示即将到来的调用屏幕。到回答这个问题的那天,只有几个包可以处理这些事情,这里有一个可以处理两个平台:
    https://pub.dev/packages/flutter_callkeep

如果你想要一个完全不同的东西,需要运行一些后台程序,那么有很多事情你应该首先知道<我建议从这里开始:https://flutter.dev/docs/development/packages-and-plugins/background-processes下面是一个有用的包,用于处理应该持续运行的后台进程
https://pub.dev/packages/background_fetch

目前有两个包为agora提供集成。io:

  • https://pub.dev/packages/agora_rtc_engine(对于Agora实时通信,包括维迪奥通话)

希望这能帮到你。

 类似资料:
  • 我使用aws kinesis video stream webRTC在reactjs中进行视频聊天。一切都很好。但是我想把视频存储在s3 Bucket中。我应该如何实现这个视频存储?

  • 点击屏蔽,该视频将被屏蔽不可播放。 点击恢复可恢复正常播放状态。

  • 是迄今为止用Java捕获麦克风输入的最简单方法。我想对我用屏幕视频(在屏幕录制软件中)捕获的音频进行编码,以便用户可以创建教程、幻灯片盒等。 我使用对视频进行编码<他们确实有一个用视频编码音频的教程,但他们从文件中获取音频。就我而言,音频是实时的 参考文献: 1. DavaDoc for TargetDataLine:http://docs.oracle.com/javase/1.4.2/docs

  • 视频通话中,默认显示1个主屏+4个小屏,若想查看其他人的屏幕,提供两种方式: 1、 在小屏中进行滑动交互,即可通过滑动轮播的形式在小窗口中查看其他人的画面; 2、 在成员管理界面中,右键或点击某个人成员,即可呈现二级菜单,二级菜单中选择置顶到主屏即可。

  • 我正在寻找一个解决方案在FFmpeg合并音频(mp3)与短视频循环,或GIF。 我已经能够通过加入音频从图像生成视频,但视频在音频持续时间内保持静态帧,命令如下: 我需要的视频,有音频的持续时间,但使用另一个mp4或GIF循环。在音频持续时间内保持重复。

  • 正常模式下不播放同一视频。 我的问题是, 当我尝试播放视频,我得到的只是空白视频,但我得到了所有的音频和字幕。 我的代码有什么错误。请给我任何建议。