BroadcastReceiver для всех видов деятельности - PullRequest
0 голосов
/ 26 июля 2011

В моем приложении у меня есть MainActivity, которая расширяет ListActivity.Все остальные мои действия расширяют MainActivity.

Таким образом, в MainActivity у меня есть все настройки, действительные для всех моих действий, а также BroadcastReceiver, который получает намерения от службы.

Моя проблема в классе предпочтений, которыйне расширяет MainActivity, и поэтому я теряю те же намерения, когда пользователь находится в окне настроек.

Можно ли всегда включить BroadcastReceiver для всех компонентов моего приложения?

1 Ответ

0 голосов
/ 26 июля 2011

BroadcastReceiver вызвано IntentFilter, которое не имеет ничего общего с Intent, но со строкой действия.

Если бы Intent началось с того же действия - это началось бы BroadcastReceiver. Поэтому, чтобы начать BroadcastReceiver с вашего действия с настройками, вам просто нужно запустить его с тем же действием, которое указано в вашем IntentFilter (как здесь в примере: "mypackage.myclass.MY_ACTION"):

    <receiver android:name=".MyReceiver">
        <intent-filter>
            <action android:name="mypackage.myclass.MY_ACTION"/>
        </intent-filter>
    </receiver>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...