Android registerReceiver с фильтром Intent: нужно проверить действие? - PullRequest
0 голосов
/ 19 марта 2019

Допустим, у меня есть этот приемник:

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            if(ACTION.equals(intent.action)){
                doSth()
            }      
        };

Затем я регистрирую его динамически следующим образом:

mContext.registerReceiver(mReceiver, new IntentFilter(ACTION));

Нужно ли проверять внутри приемника с помощью

 if(ACTION.equals(intent.action)){
                doSth()
            }

так как внутри метода registerReceiver я поместил intentFilter с ACTION?

1 Ответ

2 голосов
/ 19 марта 2019

Вам не нужно проверять действие, если ваш фильтр правильный.Согласно документации, «Получатель будет вызываться с любым намерением широковещания, соответствующим фильтру, в главном потоке приложения».Дополнительная информация: https://developer.android.com/reference/android/content/Context.html#registerReceiver(android.content.BroadcastReceiver,%20android.content.IntentFilter)

...