android蓝牙2.0,android - Bluetooth on 2.0+ - Stack Overflow

Anyone could solve this problem ?

I try the following code :

// Keep listening to the InputStream while connected

while (!isInterrupted)

{

try

{

//Clear buffer

buffer = new byte[1024];

// Read from the InputStream

if (mmInStream != null && mmInStream.available() > 0)

{

if (isInterrupted)

break;

bytes = mmInStream.read(buffer);

// Send the obtained bytes to the UI Activity

mHandler.obtainMessage(Act_Main.MESSAGE_READ, bytes, -1, buffer).sendToTarget();

}

else

{

try

{

synchronized (this)

{

this.wait(100);

}

if (isInterrupted)

break;

}

catch(InterruptedException ex)

{

Log.e(TAG, "WAIT_EXCEPTION:"+ ex.getMessage());

}

}

}

catch(Exception ex)

{

Log.e(TAG, "disconnected", ex);

connectionLost();

break;

}

}

And I changed the isInterrupted boolean in the cancel() method. Here is my stop() method:

/**

* Stop all threads

*/

public synchronized void stop()

{

isStop = true ;

if (D)

Log.d(TAG, "stop");

if(mConnectThread != null)

{

mConnectThread.cancel();

mConnectThread = null;

}

if(mConnectedThread != null)

{

mConnectedThread.cancel();

mConnectedThread = null;

}

setState(STATE_NONE);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值