-3

我的 android 应用程序中有此代码:

@Override
protected void onProgressUpdate(byte[]... values)
{
    if (values.length > 0)
    {
        String message = new String(values[0]);

        boolean isConfig = message.contains("Messages");

        if (isConfig)
        {
              String configFile = message;
        }
        else
        {
            receiveTxt.setText(message);
            Vibrator v = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);

            if (vibrate)
            {
                v.vibrate(500);
            }
        }
    }
}

当我单步执行代码时,它将通过第一个 if 语句,但它永远不会进入第二个 if/else 语句。它只是一直在走……有什么想法吗?

谢谢

4

2 回答 2

3

If 工作正常。isConfig 的布尔值始终为 false,这就是为什么代码流没有进入第二个 if 语句的原因。

使用调试器检查 values[0] 的内容。

于 2013-08-16T07:53:39.390 回答
0

您的问题在这里onProgressUpdate(byte[]... values),您正在制作一个包含一个字节数组的二维数组。而是使用byte..., 并将其视为数组。

于 2013-08-16T07:54:41.253 回答