주기적으로 인터넷에서 업데이트를 가져 오는 서비스를 구현하고 싶습니다. 나는이 목적을 성취 할 수있는 몇 가지 방법이 있음을 압니다. 나는 그들 중 2 명을 열거 할 것이다. 보다 효율적이고 실제로 어떤 것이 더 일반적인지 말해주십시오. 미리 감사드립니다.안드로이드 - 주기적 서비스를위한 모범 사례
1. 무한 while (true) 루프를 별도의 스레드 내에서 구현 한 다음 서비스의 onStartCommand
에서이 스레드를 실행하십시오. 의사 코드 :
class Updater extends Service {
...
public int onStartCommand(Intent intent, int flags, int startId) {
new Thread(new Runnable() {
@Override
public void run() {
while (true){
// fetching update...
Thread.sleep(FOR_A_WHILE);
}
}
}).start();
}
...
}
2.Schedule AlarmManager
주기적으로 트리거 할
가능한 중복 [백그라운드에서 Android 앱을 정기적으로 설문하는 가장 좋은 방법] (http://stackoverflow.com/questions/6052426/best-way-to-have-an-android-app- poll-periodic-in-the-background) – ntv1000