2012-05-02 38 views
-1

我想執行2個任務。 首先應每10min重複一次 第二次應該每分鐘重複一次。 示例 在第一個任務中打開網站 在第二個任務中打開另一個網站。 Thanx提前隨後在android中安排兩個任務

+0

我試圖使用timertask這兩個任務。但是我的力量關閉,它說不能在線程中創建句柄tat還沒有調用looper.prepare() – acid

+0

你每分鐘只需要1個任務。該任務每10次運行一次就必須執行一些操作。 – zapl

回答

3

對於安排部可以使用AlarmManager

例如:

public class TaskScheduler { 
    public static void startScheduling(Context context) { 

      Intent intent = new Intent(context, MyReceiver.class); 
      PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0); 
      AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
      alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime(), 600, pendingIntent); 

    } 
} 

內。然後你接收器類可以啓動一個IntentService

public class MyReceiver extends BroadcastReceiver {  
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Intent intentService = new Intent(context, MyService.class); 
     context.startService(intentService); 
    } 
} 

MyService大體類似:

class MyService extends IntentService { 
    public MyService() { 
     super(MyService.class.getSimpleName()); 
    } 

    @Override 
    public void onHandleIntent(Intent intent) { 
     // your code goes here 
    } 
} 

最後,不要忘了在清單文件中註冊MyReceiver

<receiver 
    android:name="Your.Package.MyReceiver"> 
</receiver> 

,以及您的服務:

<service 
    android:name="..."> 
</service>