我有下面一段代码,是用于在Android上从套接字接收输入流的。它运行良好,但当手机进入睡眠状态时,我的日志记录器会不停地打印出接收到了
从我的调试结果来看,这意味着整个循环中我的
这是我的代码,在
显然,在
谢谢
""
。从我的调试结果来看,这意味着整个循环中我的
if
语句不足够吗?//Global variable declaration
private OnMessageReceived mMessageListener = null;
byte[] buffer = new byte[100];
while (mRun) {
int len = in.read(buffer);
input = "";
if (buffer != null && mMessageListener != null) {
for (int i = 0; i < len; i++) {
input += (char) buffer[i];
}
// call the method messageReceived from MyActivity class
mMessageListener.messageReceived(input);
System.out.println("Recieved: " + input);
}
input = "";
}
这是我的代码,在
while
中运行。现在,我确定在我的以下代码中没有测试正确的条件:
if (buffer != null && mMessageListener != null)
我还能测试什么/我可能正在测试错误的东西?显然,在
while
运行一次之后,缓冲区不等于null,然后我假设当手机进入睡眠状态(屏幕变黑)时,mMessageListener
变为非null?谢谢