我正在通过蓝牙从应用程序发送一些信号。
我的应用程序的工作方式是首先输入一个处理所有蓝牙相关事物的活动。这里显示了所有找到的设备的布局。
按下设备时,它会连接到设备,如:
public BTCommunicator myBTCommunicator = null;
获取MAC地址。
成功连接后,我会带着一堆按钮监听器进入另一个活动。
当你按下一个按钮时,它会调用蓝牙活动中的一个功能,该功能应该向外部设备发送信号。
public void updateMotorControl(int left,int right){
if (myBTCommunicator != null) {
// send messages via the handler
sendBTCmessage(BTCommunicator.NO_DELAY, motorLeft, left * directionLeft, 0);
sendBTCmessage(BTCommunicator.NO_DELAY, motorRight, right * directionRight, 0);
}
问题在于,当我们返回时,myBTCommunicator == null。当我检查我的外部设备时,它仍然是连接的,但是当你离开并返回时显然没有保存myBTCommunicator。有办法解决这个问题吗?
答案 0 :(得分:0)
使您的连接全局静态
public BTCommunicator myBTCommunicator = null;
要
SomeGlobal.class
public static BTCommunicator myBTCommunicator;