BroadcastReciever не выдаед значение переменной

        Boolean status2 = false;   

public Boolean broadcastReciever() {

        Intent intent = new Intent(BROADCAST_ACTION);
        Context context = MainActivity.getAppContext();

        br = new BroadcastReceiver() {

            public void onReceive(Context context, Intent intent) {

                int status = intent.getIntExtra(PARAM_STATUS, 0);

                if (status == RAdapter.STATUS_BTN_STOP_PRESSED) {
                    int btn_pos = intent.getIntExtra(BTN_POS, 0);

                    status2 = true;
                    System.out.println("status2"+status2); // Срабатывает при получении сообщений
                }

            }
        };

        IntentFilter intFilt = new IntentFilter(BROADCAST_ACTION);
        context.registerReceiver(br, intFilt);

        System.out.println("status22"+status2); // Всегда false

        return status2;
    }

По задумке этот фрагмент запрашивается из цикла другого класса и проверяет наличие сообщений, если сообщений нет то false и цикл продолжается, а если true то break;. И он успешно ловит сообщения, но return всегда возвращает false. Почему boolean status2 не выходит за пределы цикла if (status == RAdapter.STATUS...?


Ответы (0 шт):