我正在尝试使用Agora构建一个视频通话应用程序,我需要在用户呼叫时显示像WhatsApp一样的接受屏幕,如果应用程序退出,我需要在用户呼叫时显示呼叫屏幕,我尝试了很多东西,但是没有任何作用,我试图做我颤抖,但没有太多关于这方面的信息,请帮助我
首先要事。在深入研究解决方案之前,您需要了解一些概念。实际上没有开箱即用的解决方案。
您需要同时使用几件事:
如果你想要一个完全不同的东西并且需要运行一些后台进程,那么你应该首先了解一堆事情。
我建议从这里开始:https://flutter.dev/docs/development/packages-and-plugins/background-processes
这是一个有用的包,用于处理应该不断运行的后台进程:
https://pub.dev/packages/background_fetch
目前有两个包为agora.io提供集成:
我希望这可以帮助你。
您可以尝试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);
});
}
也许这可以帮助你。
完整文章中篇文章
这里的 Github 链接是使用 Firebase 和自定义 UI 的 Agora SDK 的完整示例
特点:-
这里是中等文章链接
这是 Github 存储库链接