我的应用程序有一些活动,在第一个活动中,我连接了一个套接字以在其他活动上与服务器进行通信。此套接字在工作线程中运行。
我的问题是:应用程序完成后我在哪里可以关闭这个套接字?例如,使用 BACK 按钮...
我想关闭onDestroy()
最后一个活动的套接字,但是这个活动可以在运行时被系统破坏并关闭套接字,即使应用程序没有完成。我不想要这个。
我run()
处理套接字连接的线程方法如下:
public void run() {
if (this.bliveclient.isConnected()){
try {
//...
while (running) {
//waiting for input data and do something...
}
}
catch (IOException ex) {
//handle exception
}
finally{
try {
mySocket.close();
} catch (IOException ex) {
//handle exception
}
}
}
但是该finally
块永远不会被调用。
谁能给我一些提示?