Обычная задача Android (эквивалент Cronjob) -- java поле с участием android поле с участием timer поле с участием cron пол Связанный проблема

Android regular task (cronjob equivalent)


16
vote

проблема

русский

Последний раз, когда этот вопрос был задан (другим пользователем), ответ ответа был:

Если это работает в беговой активности, вы можете использовать таймер / TimerTask и обработчик, или вы можете использовать PostDelayed () и асинктюз.

Вот: Android повторяется задача

Я все еще узнаю, как программировать Android. Я прошел сквозь навыки, которые я знаю, включая темы и имел много вопросов с моим кодом. Кто-нибудь может привести пример того, как использовать: время / timertask и обработчик или postdelayed () и асинктюз.

Спасибо заранее :)

Английский оригинал

The last time this question was asked (by a different user), the answer response was:

If this is in a running activity, you could use Timer/TimerTask and a Handler, or you could use postDelayed() and an AsyncTask.

Here: Android Repetitive Task

I am still learning how to program android. I have gone through the skills I do know including threads and had many issues with my code. Can anyone give an example of how to use: time/timertask and handler OR postDelayed() and AsyncTask.

Thanks in advance :)

</div
           

Список ответов

4
 
vote
vote
Лучший ответ
 

У меня есть чувство, что это может помочь: http: / /www.tuTorialForForandroid.com/2009/01/using-handler-in-andand.html

 

I have a feeling this may help: http://www.tutorialforandroid.com/2009/01/using-handler-in-android.html

</div
 
 
23
 
vote

Для CRON, как задачи, которые вы должны использовать AlarmManager, это системный сервис, для использования его в вашем коде необходимо позвонить:

 <код> AlarmManager myAlarmManager = Context.getSystemService(Context.ALARM_SERVICE).   

Полные документы о AlarmManager Здесь.

 

For Cron like tasks you have to use AlarmManager, this is a system service, for using it in your code you need to call:

AlarmManager myAlarmManager = Context.getSystemService(Context.ALARM_SERVICE). 

Full docs about AlarmManager here.

</div
 
 
 
 
5
 
vote

Самый подходящий подход - через сервисы. Я узнал, как писать услуги, глядя на исходный код для приложения для электронной почты, который включен в Android.

Общая идея состоит в том, что вы переопределите Сервис класса, а также Настройте Аварийные сигналы для активации вашего сервиса. В отличие от Daemons и Windows Services, Услуги Android не всегда работают - они запускаются (обычно при активации тревоги) выполняют работу, затем выключите. В некоторых случаях вам, возможно, понадобится приобрести Частичный замок Wake для сохранения Сервис идет до завершения задачи - в противном случае Android может преждевременно убить ваш сервис.

 

The most suitable approach is through services. I learned how to write services by looking at the source code for the stock Email app that is included with Android.

The general idea is that you override the Service class, and set up alarms to activate your service. Unlike daemons and Windows services, Android services aren't always running - they start up (usually when activated by an alarm), perform work, then shut down. In some cases, you may need to acquire a partial wake lock to keep the service going until it completes the task - otherwise, Android may kill your service prematurely.

</div
 
 
         
         
4
 
vote

Если вы хотите построить Runjer Cronjob, то то, что вы хотите, это Сервис :

Услуга - это компонент приложений, который может выполнять длительные работы в фоновом режиме и не предоставляет пользовательский интерфейс. Другой компонент приложений может начать службу, и он будет продолжать работать на заднем плане, даже если пользователь переключается в другое приложение. Кроме того, компонент может связываться с сервисом для взаимодействия с ней и даже выполнять интерпрессную связь (IPC). Например, сервис может обрабатывать сетевые транзакции, воспроизводить музыку, выполнять файл ввода / вывода или взаимодействовать с провайдером контента, все с фона.

 

If you want to build a cronjob runner then what you want is a Service:

A Service is an application component that can perform long-running operations in the background and does not provide a user interface. Another application component can start a service and it will continue to run in the background even if the user switches to another application. Additionally, a component can bind to a service to interact with it and even perform interprocess communication (IPC). For example, a service might handle network transactions, play music, perform file I/O, or interact with a content provider, all from the background.

</div
 
 
 
 
-1
 
vote

Ссылка из Google на самом деле довольно хорошая.

http://developer.android.com/reference/android/os/ Asynctask.html

 

The reference from google is actually quite good.

http://developer.android.com/reference/android/os/AsyncTask.html

</div
 
 

Связанный проблема

4  Ссылка метода против лямбда экспрессия  ( Method reference vs lambda expression ) 
Я хочу заменить лямбда выражение по ссылке метода в примере ниже: <код> public class Example { public static void main(String[] args) { ...

1  Я хочу, чтобы мой NPC посмотреть в направлении, на котором я стою. Как бы я сделал это наиболее эффективно?  ( I want my npc to look in the direction i am standing at how would i do this mos ) 
В настоящее время я строю 2D игру с Slick2D, и сейчас я реализую свой первый NPC. У меня уже есть спрайты, я смог нарисовать его, были столкновения, и так д...

-3  Как прекратить воспроизведение сервиса в Android  ( How to stop playing service in android ) 
У меня есть вопрос о сервисе и трансляции в Android.I Создайте страницу будильника, которые используя класс тревоги Reciver (он расширяет класс трансляции) дл...

0  Java Applet Рисование формы на входе пользователя  ( Java applet drawing shapes by user input ) 
Вот то, что я хотел сделать. Есть текстовое поле, и пользователь входит в то, что он хочет. Например, «прямоугольник» или «прямоугольник», «круг» или «круг». ...

2  Мой бар jmenu не показывает  ( My jmenu bar is not showing up ) 
Мой jmenubar не показывает, когда я запускаю свое приложение. Как я могу это исправить ?? Поэтому, когда я бегу свой Jframe, мне нужно увидеть мой jmenubar ...

427  Что означает «не может найти символ» или «не может разрешить символ» ошибка?  ( What does a cannot find symbol or cannot resolve symbol error mean ) 
Пожалуйста, объясните следующее о «не можете найти символ», - не может разрешить ошибки символа «или« символ не найден »: . Что они имеют в виду? Что може...

0  Передаваемые данные из другого потока, медленно последовательная связь с библиотекой Java и RxTx  ( Transmitting data from another thread slow serial link with java and rxtx libra ) 
<Р> Хорошо, я постараюсь быть как можно более ясно с моей проблемой. Я передача последовательных данных по veeeeeeery медленного радиоканала (с помощью UART-ко...

0  Прокрутите вверх относительной макета при прокрутке вверх по просмотру  ( Scroll up relative layout when scrolling up listview ) 
Я создаю приложение. и пользовательская информация отображается в относительной макете. При относительной макете - это список с элементами, создаваемыми польз...

26  Как добавить кнопку в ряд jtable в качелях java  ( How to add button in a row of jtable in swing java ) 
Я сделал один важный графический интерфейс, который имел jtable с некоторыми строками и столбцами. Как я должен добавить кнопку для строки в JTable? ...

3  Добавление музыки / звука в программы Java  ( Adding music sound to java programs ) 
Я делаю несколько мини Java Games, и мне было интересно, как я могу добавить звук / музыку в свои программы. Я смотрел видео на YouTube и последовал за предос...

1  Libgdx setscreen () сбивает игру, когда сделано несколько раз  ( Libgdx setscreen crashes game when done multiple times ) 
У меня есть <код> GameScreen и после окончания уровня, я устанавливаю экран обратно в <код> GameScreen как перезапустить , когда пользовательская кнопка пе...

3  Итализация через хесмап: «Для» петля с использованием произвольного доступа или итератора?  ( Iterating over a hashmap for loop using random access or iterator ) 
Мне нужно повторить через хешмап, чтобы извлекать значения, хранящиеся в нем. Как бонус, у меня также есть список клавиш. Поэтому у меня есть возможность по...

4  403 доступ запрещен на указанный URL в Tomcat 7.0.52  ( 403 access denied to specified url in tomcat 7 0 52 ) 
Я недавно мигрировал сервер Tomcat из <код> 7.0.49 на <код> 7.0.52 . В Tomcat он содержит 2 веб-приложений, которые работали ранее, после миграции на эту вер...

1  Неправильное количество прошедших args, но я передаю правильную сумму  ( Wrong number of args passed but i pass the correct amount ) 
Я использую quil с cljure и получаю странную ошибку. Я получаю ошибку <код> Exception in :draw function: #error { :cause Wrong number of args (1) pass...

-1  Как установить Jlint-3.0 на Ubuntu 14.04.2? [Дубликат]  ( How to install jlint 3 0 on ubuntu 14 04 2 ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> Этот вопрос уже есть ответы здесь : ...

Связанный проблема

4  Ссылка метода против лямбда экспрессия 
1  Я хочу, чтобы мой NPC посмотреть в направлении, на котором я стою. Как бы я сделал это наиболее эффективно? 
-3  Как прекратить воспроизведение сервиса в Android 
0  Java Applet Рисование формы на входе пользователя 
2  Мой бар jmenu не показывает 
427  Что означает «не может найти символ» или «не может разрешить символ» ошибка? 
0  Передаваемые данные из другого потока, медленно последовательная связь с библиотекой Java и RxTx 
0  Прокрутите вверх относительной макета при прокрутке вверх по просмотру 
26  Как добавить кнопку в ряд jtable в качелях java 
3  Добавление музыки / звука в программы Java 
1  Libgdx setscreen () сбивает игру, когда сделано несколько раз 
3  Итализация через хесмап: «Для» петля с использованием произвольного доступа или итератора? 
4  403 доступ запрещен на указанный URL в Tomcat 7.0.52 
1  Неправильное количество прошедших args, но я передаю правильную сумму 
-1  Как установить Jlint-3.0 на Ubuntu 14.04.2? [Дубликат] 



© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.