Android запускает службу из активности / асинхронной - PullRequest
0 голосов
/ 07 октября 2011

Я вижу много вопросов о запуске действия из службы, но я не уверен, как запустить службу из действия.

Я хочу, чтобы это происходило в асинхронной задаче

Когда пользователь загружает действие, выполняется некоторая фоновая обработка блокировки и запускается служба.

Эта служба выполняет свою собственную логику в более глубоком фоне и может быть изменена путем изменения переменных в визуальных действиях

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

Ответы [ 2 ]

2 голосов
/ 07 октября 2011

Просто используйте startService() с намерением, которое относится к вашей услуге.Там нет ничего особенного.Если вам нужно передать параметры, вы можете установить их в дополнениях Intent.Срhttp://developer.android.com/reference/android/content/Context.html#startService(android.content.Intent)

0 голосов
/ 31 июля 2018

Это ничего не значит для запуска службы, просто используйте следующий код.

Intent intent = new Intent(MainActivity.this,MyService.class);
startService(intent);

Согласно вашему вопросу и моему пониманию

Простой запуск службы из Activity или запуск тем же способом из асинхронной задачи. В соответствии с вашим потоком я даю только пример кода

MainActivity.java

MyAsyncTask myTask = new MyAsyncTask(this);
myTask.execute();

Теперь перейдите к методу ASYNC Task doInBackground () , вы можете запустить службу с помощью намерения.

Intent intent = new Intent(MainActivity.this,MyService.class);
startService(intent);

Теперь вы хотите обновить свой MainActivity.java, затем вы можете использовать interface или запустить startActivity (намерение), указав значение, подобное putExtra () , согласно вашему требованию. но я рекомендую использовать интерфейс для обновления вашей активности от службы.

...