2011-04-06 15 views
0

我一直在使用Android幾個星期,現在和服務有一些麻煩。Android的方法:如何設計一個服務,經常檢查一個特定的事件

我有一個後臺服務運行,每隔一分鐘左右檢查是否需要執行預定的操作。第二種用途是存儲一些用戶數據並使其可用於我的活動。有兩個問題:

  1. 該服務被綁定到我的主應用程序,但似乎一旦我退出主應用程序,服務也被破壞。爲什麼是這樣,我能做些什麼反對呢?
  2. 服務不會永遠運行,但似乎停止在隨機點。

我明白爲什麼Android會殺死我的服務等等,我也嘗試使用AlarmManager而不是在服務中使用Timer。這些方法以某種方式起作用,但它們不夠多才多藝並且不夠動態。

那麼,我該如何同時進行定期的計劃檢查和某種類似於Android的數據共享方式?

回答

1

您需要了解
本地服務遠程服務 您可以使用下面的鏈接查看差或轉到http://developer.android.com/guide/topics/fundamentals.html鏈接閱讀安卓約基波分量。

http://saigeethamn.blogspot.com/2009/09/android-developer-tutorial-for_04.html http://saigeethamn.blogspot.com/2009/09/android-developer-tutorial-part-9.html

可以使用的TimerTask和Timer安排你的任務在常規運行一個線程間隔

我正在使用以下代碼在UI上顯示結果。

Handler handler = new Handler(); 
Timer t; 
TimerTask timeTask; 
protected void usingTimerTask() { 
    t = new Timer(); 
    timeTask = new TimerTask() { 
     public void run() { 
       handler.post(new Runnable() { 
         public void run() { 
          btn1.setText("Hi"); 
         } 
       }); 
     }}; 

     t.scheduleAtFixedRate(timeTask, new Date(), 1000); 
} 
+0

好的,遠程服務看起來不錯。似乎我只使用本地服務。但是我能做些什麼來確保它始終運行?或者至少每隔幾分鐘... – Thorben 2011-04-06 08:08:10

+0

我修改了答案。 – Vivek 2011-04-06 09:19:40

相關問題