ANDROID: невозможно установить действие в CONNECTIVITY_CHANGE в моем сервисе - PullRequest
2 голосов
/ 26 февраля 2012

У меня есть служба, в которой я хочу зарегистрироваться для действия широковещания CONNECTIVITY_CHANGE (android.net.conn.CONNECTIVITY_CHANGE), чтобы обновить мой онлайн-статус.Я делаю это следующим образом

Метод Service OnCreate

final IntentFilter theFilter = new IntentFilter();
theFilter.addAction(android.net.conn.CONNECTIVITY_CHANGE);

this.ConnStateReceiver = new BroadcastReceiver() {

         @Override
         public void onReceive(Context context, Intent intent) {
         // Do whatever you need it to do when it receives the broadcast
         // Example show a Toast message...
    }
};

Но во время компиляции он не распознает часть android.net.conn в моем android.net.conn.CONNECTIVITY_CHANGE .Это показывает некоторую проблему пакета.Пожалуйста, помогите мне исправить это.Поскольку я регистрируюсь на широковещательный приемник динамически, я думаю, что нет необходимости упоминать это в файле манифеста.Пожалуйста, предложите мне.Я застрял здесь.

Ответы [ 2 ]

4 голосов
/ 05 марта 2012

Попробуйте использовать:

theFilter.addAction(android.net.ConnectivityManager.CONNECTIVITY_ACTION);
1 голос
/ 27 октября 2014

Я не знаю, нужно ли вам решение, но IntentFilter.addAction () получает строку, поэтому, если вы передаете ей строку с именем, она работает:

theFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");

Я согласен, что кто-то грубо проголосовал без причины.

...