为什么我的Flutter应用程序在Android后台运行时一直发送WebSocket消息

dohp0rv5  于 2022-11-11  发布在  Flutter
关注(0)|答案(1)|浏览(378)

我写了一个小flutter应用程序,它会定期发送WebSocket消息(每隔15秒)到服务器。由于应用程序在后台运行时也会发送websocket消息,我很惊讶它已经工作了。我想,当应用程序在后台运行时,所有的任务都会被android自动停止。
以下是关于我的应用程序的一些相关信息:

  • 在AndroidManifest.xml中只有以下持久化集:,因此此处没有设置前台或后台权限
  • 对于WebSocket连接,我使用web_socket_channel:^2.1.0套件

实施过程非常简单:

final channel = WebSocketChannel.connect(Uri.parse('wss://....'));

timer = Timer.periodic(repeadTime, (timer) {
  sendPeriodicallyWebsocketMessages();
});

sendPeriodicallyWebsocketMessages() {
 channel.sink.add('send data');
}
xlpyo6sf

xlpyo6sf1#

在后台移动应用程序后,它可能会发送1-2分钟的消息。之后,它将停止工作。

相关问题