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

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

Войти
Регистрация
Восстановить пароль
 
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
#1

Выполнение задачи с интервалом 1 с - Программирование Android

12.07.2016, 09:53. Просмотров 277. Ответов 12

Пишу программу под Андроид. Одна из функций программы, запуск определенного кода каждую секунду вне зависимости от того спит система или нет. На андроиде 4.2 отлично работает AlarmManager (SetInexactRepeating), который вызывает код моего сервиса с нужной частотой. На андроиде 5.1 столкнулся с тем, что частоты ниже 1 минуты принудительно приводятся к 60 сек и код сервиса вызывается уже раз в минуту, что меня не устраивает.

Можете ли подсказать корректные методы решения моей задачи? Может быть надо использовать другой подход?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2016, 09:53     Выполнение задачи с интервалом 1 с
Посмотрите здесь:

Клики с интервалом - Программирование Android
Подскажите пожалуйста, как сделать так, чтобы при 5 кликах подряд с маленьким интервалом (примерно 0.5с) выводилось какое-то сообщение, ну...

HTTP запрос с интервалом - Программирование Android
Здравствуйте! Подскажите как получать код странички с интервалом ~85мс Я пробовал так, подключая таймерclass DownloadWebPageTask...

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

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

Остановить выполнение во фрагменте - Программирование Android
Есть для примера код который расположен в фрагменте. как остановить программу // Если номер введен неверно ...

Выполнение задач в бэкграунде - Программирование Android
Доброго времени суток, нужна помощь с реализацией. Есть базе начальное время и конечное время, в этот промежуток на устройстве должен...

Выполнение сценария на Android - Программирование Android
Приветствую, товарищи! Возник вопрос - возможно ли сделать .apk, который сведет к минимуму действия человека? В рамках одного цикла...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OlegJV
102 / 102 / 29
Регистрация: 13.03.2016
Сообщений: 471
12.07.2016, 10:29     Выполнение задачи с интервалом 1 с #2
Таймер, но батарею жрать будет...
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
12.07.2016, 10:45  [ТС]     Выполнение задачи с интервалом 1 с #3
Про батарею я понимаю, это неизбежное зло. А про таймер хотелось бы подробнее.... Ссылку на класс, примеры....
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
12.07.2016, 10:50     Выполнение задачи с интервалом 1 с #4
а если где-то в сервисе стартануть задачу с интервалом 1 сек?
Java
1
2
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleAtFixedRate(runnableTask, 0, 1, TimeUnit.SECONDS);
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
12.07.2016, 11:00  [ТС]     Выполнение задачи с интервалом 1 с #5
http://stackoverflow.com/questions/6...xecutorservice
Если верить этой ссылке, таймеры и ScheduledExecutorService не будут работать когда телефон заснет и отстрелит мое приложение.
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
12.07.2016, 11:23     Выполнение задачи с интервалом 1 с #6
что подразумевается под "телефон заснет"?
OlegJV
102 / 102 / 29
Регистрация: 13.03.2016
Сообщений: 471
12.07.2016, 11:32     Выполнение задачи с интервалом 1 с #7
Таймер в сервисе, а перезапуск сервиса никто не отменял
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
12.07.2016, 11:43  [ТС]     Выполнение задачи с интервалом 1 с #8
Имею в виду, когда мое приложение будет поставлено на паузу системой.

Добавлено через 1 минуту
Таймер в сервисе, а перезапуск сервиса никто не отменял.
Что имеете в виду под перезапуском сервиса?
OlegJV
102 / 102 / 29
Регистрация: 13.03.2016
Сообщений: 471
12.07.2016, 11:51     Выполнение задачи с интервалом 1 с #9
Я имею в виду, что если система сервис убьёт, он сам заново запустится.
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
12.07.2016, 11:54  [ТС]     Выполнение задачи с интервалом 1 с #10
Я имею в виду, что если система сервис убьёт, он сам заново запустится.
Когда перезапустится? Я думаю что не скоро, а необходимость выполнять код раз в сек остается.
OlegJV
102 / 102 / 29
Регистрация: 13.03.2016
Сообщений: 471
12.07.2016, 12:19     Выполнение задачи с интервалом 1 с #11
То есть подразумевается, что система может убить все, кроме твоей программы? Хоть аккумулятор из телефона вытащи, а код должен исполняться раз в секунду ))
petruchodd
12.07.2016, 12:28
  #12

Не по теме:

интересно , а зачем нужен интервал такой маленький - ведь батарея реально будет садится быстро + именно из-за этого на 5+ и сделали ограничение в минуту

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.07.2016, 13:03     Выполнение задачи с интервалом 1 с
Еще ссылки по теме:

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

Остановить выполнение кода - Программирование Android
Добрый день уважаемые написал такой код: txt=myEdit.getText().toString(); txtlength=txt.length(); if (txtlength==0){ ...

Запрет выполнение Activity из-за энергосбережения - Программирование Android
Столкнулся с такой проблемой. Сервис запускает активити, которое включает экран, но из-за энергосбережения , активити запускается только...

Выполнение кода в отдельном потоке - Программирование Android
Добрый день! Изучаю программирование на андроид, написал тестовую программку где отрисовка происходит в отдельном потоке. Вроде...

Выполнение различных задач из Service - Программирование Android
Сделал по примеру сервис, который включает в заданное время wi-fi. Сейчас время крутится в цикле, на сколько это допустимо? Читал, что для...


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

Или воспользуйтесь поиском по форуму:
AntonAD
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 7
12.07.2016, 13:03  [ТС]     Выполнение задачи с интервалом 1 с #13
То есть подразумевается, что система может убить все, кроме твоей программы? Хоть аккумулятор из телефона вытащи, а код должен исполняться раз в секунду ))
Не будем доводить тему до абсурда.
Сервис должен работать пока телефон работает. AlarmManager вполне штатно это позволяет делать. Причем до 5 версии с нужной частотой.
Yandex
Объявления
12.07.2016, 13:03     Выполнение задачи с интервалом 1 с
Ответ Создать тему
Опции темы

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