Что касается других компонентов приложения, таких как действия, Intent, Broadcast Receiver, я могу понять их вариант использования, но любой вариант использования Службы, написанный в документации, может быть достигнут с использованием простого Java-класса со статическими элементами (переменными и методами). Как если мне нужна служба загрузки файлов. У меня может быть статический метод, который получит аргумент taskListener и другие необходимые параметры (например, url файла) в аргументе и загрузит файл async и даст обратный вызов методу обратного вызова taskListener. Так почему я должен использовать сервис для этого.Почему Android-сервис был сделан как еще один экземпляр приложения?
Пожалуйста, кто-нибудь объяснить мне причину использования сервиса с примером
Заранее спасибо
«Служба» имеет свой собственный жизненный цикл и время, не зависящие от «Активность». Со статическими полями и задачами async у вас есть так много возможностей для отказа. – tynn
Поскольку процесс (и загрузка), скорее всего, будет удален из памяти, если у пользователя нет экрана телефона, и пользователь смотрит прямо на вашу активность, не закрывая его в течение всего времени загрузки. Когда система нуждается в памяти, она сначала закрывает действия, прежде чем переходить к услугам. – DeeV