-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 ステートメントは通過しますが、2 番目の if/else ステートメントにはステップ インしません。常にステップオーバーするだけです...理由はありますか?

ありがとうございました

4

2 に答える 2

3

If は正常に動作しています。isConfig のブール値は常に false です。これが、コード フローが 2 番目の if ステートメントにステップインしない理由です。

デバッガでvalues[0]の内容を確認してください。

于 2013-08-16T07:53:39.390 に答える
0

あなたの問題はここonProgressUpdate(byte[]... values)にあります.1つのバイト配列を含む2次元配列を作成しています. 代わりに を使用byte...し、配列のように扱います。

于 2013-08-16T07:54:41.253 に答える