Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Акыл
6 / 6 / 0
Регистрация: 22.03.2012
Сообщений: 128
#1

Завершение сервиса - Программирование Android

10.05.2013, 22:38. Просмотров 946. Ответов 7
Метки нет (Все метки)

вот метод завершающий сервис в основной активности:
Java
1
2
3
4
 public void onClickStop(View v) {
        stopService(new Intent(this, MainService.class));
        
      }
метод onDestroy в сервисе:
Java
1
2
3
4
public void onDestroy() {
        super.onDestroy();
        Log.d(LOG_TAG, "onDestroy");
    }
Но сервис не прекращает работать, при этом в лог выводится onDestroy.
что может быть не так?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2013, 22:38     Завершение сервиса
Посмотрите здесь:

Управление громкостью из сервиса - Программирование Android
в сервисе воспроизводится звук с некоторыми промежутками, получается клавиши громкости управляют громкостью звука только при...

Создание неубиваемого сервиса - Программирование Android
А как можно создать неубиваемый сервис кроме метода startforaground()? Может какой то флаг можно передать в startCommand чтобы он вообще не...

Разбудить телефон из сервиса - Программирование Android
Плиз, помогите. Как из сервиса (IntenetService) разбудить телефон на время выполнения какой-либо задачи (в onHandleIntent)? В чем...

Запуск и останов сервиса - Программирование Android
Здравствуйте, поздравляйте с почином, первое сообщение) Вопрос такой: пишу приложение с сервисом, который должен запускаться при старте...

Два сервиса и Notification - Программирование Android
Друзья, в приложении есть сервис, в нем формируется уведомление, в котором есть кнопка с PendingIntent, вызывающая другой сервис, в котором...

Восстановление сервиса и Intent - Программирование Android
Добрый день! Разбираюсь с сервисами по одному из интернет уроков, возникла непонятная ситуация. Автор приводит следующий код: public...

Завершение потока - Программирование Android
Необходимо корректно завершить поток. Сейчас код такой class MyThread extends Thread { private void method() throws...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
10.05.2013, 22:48     Завершение сервиса #2
Цитата Сообщение от Акыл Посмотреть сообщение
Но сервис не прекращает работать,
как вы это определили?
Hank
49 / 40 / 3
Регистрация: 28.12.2011
Сообщений: 232
10.05.2013, 22:50     Завершение сервиса #3
Что происходит в сервисе? У меня было такое, в сервисе работал цикл while. После завершения сервиса, он (цикл) по непонятной мне причине продолжал работать (не разбирался почему). Перед остановкой сервиса его нужно остановить. Возможно у Вас тоже самое.
Акыл
6 / 6 / 0
Регистрация: 22.03.2012
Сообщений: 128
10.05.2013, 22:53  [ТС]     Завершение сервиса #4
у меня работает таймер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
void mainTask() {
        Runnable runnable = new Runnable() {
             
            @Override
            public void run() {
                int indikator=0;
                mrec.startRecording();
                indikator = mrec.getRecordingState();
                if (indikator!=AudioRecord.RECORDSTATE_RECORDING){
                    
                    if (k==0){
                        createNotification();
                        addToDataBase();
                        k=1;
                    }
                }
                else {
                    k=0;
                }
                mrec.stop();
                mainTask();
            }
        };
        mHandler.postDelayed(runnable, 1000);
    }
и он продолжает отлавливать запуск диктофона и завершения сервиса
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
10.05.2013, 22:56     Завершение сервиса #5
ну так здесь же бесконечный цикл...
Акыл
6 / 6 / 0
Регистрация: 22.03.2012
Сообщений: 128
10.05.2013, 23:07  [ТС]     Завершение сервиса #6
а как его остановить?
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
10.05.2013, 23:08     Завершение сервиса #7
добавьте условие
Java
1
2
3
if(run) {
 mHandler.postDelayed(runnable, 1000);
}
и в нужный момент устанавливайте
Java
1
run = false;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2013, 23:11     Завершение сервиса
Еще ссылки по теме:

Небольшая статья об использовании сервиса - Программирование Android
В голову пришла мысль написать небольшую статью по использованию сервисов в Android. Представленный мной план ниже - это не мое...

Обращение из сервиса к основному (UI) потоку - Программирование Android
как сделать так чтобы из сервиса можно было обращаться к основному потоку в котором находится UI ? изменять UI возможно ли это и если...

Исходники сервиса с сокет-клиентом - Программирование Android
Нужно написать подобное и не хочу писать все с нуля... Изобретать велосипед... Может подобное уже есть в опенсорсах? Нужно: 1)...

Не работает автозагрузка сервиса AndroidStudio - Программирование Android
Делаю пример из урока по Android Studio. Сервис работает только до перезагрузки. Поможите, пожалуйста тугому) Код MyService.java ...

Notification из сервиса не будит устройство - Программирование Android
Здравствуйте! Notification из сервиса не будит устройство, но исправно работает при активном телефоне. Как помочь делу?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Акыл
6 / 6 / 0
Регистрация: 22.03.2012
Сообщений: 128
10.05.2013, 23:11  [ТС]     Завершение сервиса #8
а куда его?

Добавлено через 1 минуту
а все)
Yandex
Объявления
10.05.2013, 23:11     Завершение сервиса
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru