我已经在服务中实现了Android BluetoothChatService,但是当我想要停止服务时,还没有办法阻止它。 该服务以意图启动:
intent = new Intent(mContext, service1.class);
并停止
stopService(intent)报告服务已停止,但蓝牙继续 - 服务中的处理程序继续接收来自BluetoothChatService的回调并回复它们。因此,虽然服务已停止,但其中的处理程序仍然存在。 BluetoothChatService包含以下代码,看起来应该停止线程:
public void stop() { if (D) Log.d(TAG, "stop"); if (mConnectThread != null) { mConnectThread.cancel(); mConnectThread = null; } if (mConnectedThread != null) { mConnectedThread.cancel(); mConnectedThread = null; } if (mAcceptThread != null) { mAcceptThread.cancel(); mAcceptThread = null; } setState(STATE_NONE); }
我不明白这一点。