我正在为安卓开发一个多人游戏应用程序。其中一位参与者充当主机(创建游戏实例的人),其他每个参与者都使用蓝牙连接到主机。
我的问题如下,该主机运行了一些线程以进行通信并保持所有打开的连接。我已经读到我的活动可以被临时销毁并在以后恢复,我应该为此使用 onSaveInstanceState 机制。但是,我说的是一个充当游戏“服务器”的应用程序,它具有为其他客户端提供服务的开放连接和线程,如果操作系统决定破坏我的活动,这些连接和线程会发生什么?他们被终止了吗?如果是这样,为了正确实现这一点,推荐的模式是什么,如何在 onSaveInstanceState 包上保持连接?它不可序列化。线程也是如此,我是否需要在销毁和恢复活动时重新创建和销毁它们?如果我将所有这些状态保存在某个代表游戏状态的静态类中?如果我这样做,那么操作系统不会破坏我的线程/连接吗?
我查看了 SDK 附带的示例蓝牙聊天,因此没有处理 onSaveInstanceState,因此不清楚我应该做什么。
谢谢!