2010-12-20 68 views

回答

2

看看AlarmManager

下面是一个例子:

Intent myIntent = new Intent(getApplicationContext(), YourActivity.class);    
PendingIntent pendingIntent = PendingIntent.getActivity(getApplicationContext(), 1, myIntent, PendingIntent.FLAG_UPDATE_CURRENT); 
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); 
alarmManager.set(AlarmManager.RTC_WAKEUP, time, pendingIntent); 
1

ReminderBootUp.java文件中有代码,在特定的时间来安排你的活动

 package com.app.reminder; 

     import java.text.SimpleDateFormat; 
     import java.util.Date; 

     import android.app.AlarmManager; 
     import android.app.PendingIntent; 
     import android.content.BroadcastReceiver; 
     import android.content.Context; 
     import android.content.Intent; 
     import android.database.Cursor; 
     import android.database.sqlite.SQLiteDatabase; 
     import android.util.Log; 

     public class ReminderBootUp extends BroadcastReceiver { 
      private SQLiteDatabase myDataBase = null; 
      private Cursor rs = null; 

      @Override 
      public void onReceive(Context context, Intent arg1) { 
       // TODO Auto-generated method stub 
       try { 
        long alarmTime = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(
          "2010-12-21 12:00").getTime(); 
        int id = 1; 
        Date date = new Date(); 
        if (date.getTime() <= alarmTime) { 
         Intent notifyIntent = new Intent(context, youractivity.class); 
         PendingIntent intent = PendingIntent.getBroadcast(context, id, 
           notifyIntent, PendingIntent.FLAG_UPDATE_CURRENT); 
         AlarmManager am = (AlarmManager) context 
           .getSystemService(Context.ALARM_SERVICE); 
         am.set(AlarmManager.RTC_WAKEUP, alarmTime, intent); 
        } 

       } catch (Exception e) { 
        Log.e("Exception", e.getMessage(), e); 
       } 
      } 

     } 

你应该在的Manifest.xml加入这一行文件

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"> 
<receiver android:name="ReminderBootUp" android:permission="android.permission.RECEIVE_BOOT_COMPLETED" android:enabled="true"> 
<intent-filter> 
<action android:name="android.intent.action.BOOT_COMPLETED"></action> 
<category android:name="android.intent.category.DEFAULT"></category> 
</intent-filter> 
</receiver> 

此代码将在启动设备后工作...

如果你想开始你的应用程序作为正常的静态活动, 写作我们的正常代码

相关问题