Привязать к сервису в Android - PullRequest
1 голос
/ 06 февраля 2011

У меня вопрос по сервисам в Android. Я хочу знать, почему это необходимо для того, чтобы связать сервис и установить соединение с ним? Я делаю приложение с геолокации, используя сервис, который реализует модуль GPS. И для получения местоположения я создаю переменную в классе static и открытый метод static для вызова извне класса, и это все. Чтобы получить позицию из GPS, который я только использовал в своих классах:

Location mLocation = ServiceGPS.getLocation();

Класс ServiceGPS имеет этот метод:

public static Location getLocation(){
    return mLocation;
}

Тогда зачем мне нужен сервис связывания? Большое спасибо за вашу помощь и за то, что поделились своими знаниями со мной.

BR. Дэвид.

1 Ответ

2 голосов
/ 06 февраля 2011

Я хочу знать, почему это необходимо для того, чтобы связать сервис и выполнить подключение к нему?

Это не «необходимо».Это не означает, что произвольные альтернативы являются хорошей идеей.

Например, если все, что делает ваш сервис - это получает Location, вы должны удалить сервис из вашего проекта и просто использовать LocationManager напрямую, так какНеясно, какую ценность добавляет ваш сервис.Не создавайте сервисы только потому, что вас поразило настроение - имейте очень четкое представление о том, какие функциональные возможности предоставляет сервис и почему это должен быть сервис, а не просто метод где-то в операции.

Для реальных служб, которые выполняют реальные задачи, код службы должен выполняться - служба обычно не имеет статических элементов данных или методов, хотя можно.Чтобы запустить службу, нужно позвонить либо startService(), либо bindService().В противном случае onCreate() и род службы никогда не будут вызваны, точно так же, как onCreate() и род деятельности никогда не будут вызваны, если действие не запущено.

Выбор, использовать ли startService() (а позже stopService() или stopSelf()) или bindService() (а позже unbindService()) зависит от того, что делает служба, как долго она должна это делать и т. д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...