在 Long 运行 服务上保存全局变量

Save global variable on Long Running Service

我正在尝试基于 Android 制作聊天应用程序。我使用 nkzawa socket.io 连接 node.js 服务器。我需要这个套接字长时间保持活动状态,所以我将这个套接字对象存储在服务中。这个套接字对象用于大多数活动,所以我将对象设为静态并在静态 getter 方法上检索。

我还需要存储全局变量,我决定将它们存储在这个服务中。我确保每当服务被销毁时,我都会将所有这些变量保存到共享首选项中。

这种设计方法好吗? 我确实需要对这个问题有所了解

即使你的服务被销毁你的静态变量也不会被销毁,因为静态变量的生命周期属于class,而不是object.If你想在服务被销毁时销毁你的对象,你可以定义一个普通变量,通过调用"aidl"的方式获取它。