Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
12.01.2016, 01:27
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Всем привет! Например задача каждые 5 минут выполнять определенное действие. Как правильно это организовать, через таймер и таск или через handler.postDelayed? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.01.2016, 09:14
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Через AlarmManager . ... |
|||
:
Нравится:
Не нравится:
|
|||
|
12.01.2016, 15:25
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
wadmanЧерез AlarmManager . Тут спасибо, это лучше. Но не понятно как он работает, вижу что в службе срабатывает onCreate, при этом происходит следующий запуск службы и не срабатывают onDestroy, onUnBind, onReBind. Служба в приложении только одна, т.е. не создаются новые экземпляры... Объясните пожалуйста. Я только начинаю изучать андройд студию вместе с джавой, сильно тапки не кидать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.01.2016, 19:28
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Какая-то непонятка происходит. В ресивере при загрузке девайса через setRepeat задал время 60 * 60 * 1000, т.е. каждый час, а срабатывает как попало... Такое впечатление что система запомнила прошлые тестовые запуски и они тоже отрабатывают. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.01.2016, 19:48
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
А, все, кажется понял ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.01.2016, 09:49
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Меня этот вопрос тоже интересовал. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.01.2016, 14:56
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
Использую AlarmManager для ежедневных напоминаний. Как корректно установить другое время срабатывания? Я делаю типа вот так Код: java 1. 2. 3.
При этом 10 - должно совпадать со значением, с которым производилась установка времени ранее значением и AlarmReceiver.class Код: java 1. 2. 3. 4. 5.
Все ли я правильно делаю? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.01.2016, 15:39
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinВсе ли я правильно делаю? Навскидку - да. Вопрос праздный или какие-то проблемы есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:08
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
wadmanDmitry SukhovilinВсе ли я правильно делаю? Навскидку - да. Вопрос праздный или какие-то проблемы есть? В базе планирую дерзать список таймеров. Т.е. их будет более одного. Опасаюсь рассинхронизации списка в безе (ее можно удалить же) и уже запущенных таймеров. В случае удаления базы таймеры совсем нельзя будет выключить. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:10
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
Т.е. в случае изменения записей в безе/форме хотелось бы отрубить ВСЕ запущенные таймеры, и потом пересоздать из используя актуальные данные из базы. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:18
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
А я поигрался и все равно не понял почему срабатывание происходит иногда норм, а иногда не в свое время. Вот такое было Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
И это единственное место в проекте с алармменеджером ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:21
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
игрался с: авторELAPSED_REALTIME ELAPSED_REALTIME_WAKEUP и авторsetInexactRepeating ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:22
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
Imperous, Думаю TZ ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:23
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinImperous, Думаю TZ чего-чего? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 13:25
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinImperous, Думаю TZ Ан, нет, getTimeInMillis() возвращает время в UTC. Все верно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:08
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
ImperousА я поигрался и все равно не понял почему срабатывание происходит иногда норм, а иногда не в свое время. Вот такое было Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
И это единственное место в проекте с алармменеджером Вот что то мне кажется, что устанавливать время в прошлое это не сильно хорошо. К моменту запуска аларма миллисекунды, полученные с календаря будут уже в прошлом. Хотя, может и не в этом дело. Расхождение во времени запуска значительные? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:23
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinВ базе планирую дерзать список таймеров. Т.е. их будет более одного. Опасаюсь рассинхронизации списка в безе (ее можно удалить же) и уже запущенных таймеров. В случае удаления базы таймеры совсем нельзя будет выключить. Можешь сделать все через один таймер, который по выполнению своей задачи выставляет следующий. И так любое количество раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:30
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
wadmanDmitry SukhovilinВ базе планирую дерзать список таймеров. Т.е. их будет более одного. Опасаюсь рассинхронизации списка в безе (ее можно удалить же) и уже запущенных таймеров. В случае удаления базы таймеры совсем нельзя будет выключить. Можешь сделать все через один таймер, который по выполнению своей задачи выставляет следующий. И так любое количество раз. Думал в эту сторону. Есть очень большой минус - придется дергать базу из места, из которого дергать ее не предполагалось. Т.е. бродкаст ресивер будет сам в базу ходить, как то не айс. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:31
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinТ.е. бродкаст ресивер будет сам в базу ходить, как то не айс. Странные комплексы, но в базу могут все: ресиверы, сервисы, приложения, виджеты и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:34
|
|||
---|---|---|---|
|
|||
Правильное выполнение задачи через определенное время |
|||
#18+
wadmanDmitry SukhovilinТ.е. бродкаст ресивер будет сам в базу ходить, как то не айс. Странные комплексы, но в базу могут все: ресиверы, сервисы, приложения, виджеты и т.п. Физически могут. Но логически не хотелось бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 14:48
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry Sukhovilinwadmanпропущено... Странные комплексы, но в базу могут все: ресиверы, сервисы, приложения, виджеты и т.п. Физически могут. Но логически не хотелось бы. Сделай только сервис, который может общаться с базой напрямую, а остальные работают с сервисом через интенты. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 15:23
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
Dmitry SukhovilinВот что то мне кажется, что устанавливать время в прошлое это не сильно хорошо. К моменту запуска аларма миллисекунды, полученные с календаря будут уже в прошлом. Хотя, может и не в этом дело. Расхождение во времени запуска значительные? да, даже могло быть и минуту 2 раза, могло быть и 3 раза в час, а было и тютелька в тютельку... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.01.2016, 15:24
|
|||
---|---|---|---|
Правильное выполнение задачи через определенное время |
|||
#18+
ImperousDmitry SukhovilinВот что то мне кажется, что устанавливать время в прошлое это не сильно хорошо. К моменту запуска аларма миллисекунды, полученные с календаря будут уже в прошлом. Хотя, может и не в этом дело. Расхождение во времени запуска значительные? да, даже могло быть и минуту 2 раза, могло быть и 3 раза в час, а было и тютелька в тютельку... особенно ерунда была в первый час запуска девайса. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=13&mobile=1&tid=1331193]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 245ms |
total: | 383ms |
0 / 0 |