0
private static final int HELLO_ID = 0;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Date dat  = new Date();//initializes to now
        Calendar cal_alarm = Calendar.getInstance();
        Calendar cal_now = Calendar.getInstance();
        cal_now.setTime(dat);
        cal_alarm.setTime(dat);
        cal_alarm.set(Calendar.MONTH,3);
        cal_alarm.set(Calendar.YEAR,2012);
        cal_alarm.set(Calendar.DAY_OF_MONTH,4);
        cal_alarm.set(Calendar.HOUR_OF_DAY,19);//set the alarm time
        cal_alarm.set(Calendar.MINUTE, 15);
        cal_alarm.set(Calendar.SECOND,0);


        if(cal_alarm.before(cal_now)){//if its in the past increment
            cal_alarm.add(Calendar.DATE,1);
        }

        Intent intent = new Intent(AlarmManagerTestActivity.this,
                AlarmReceiver.class);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(
                AlarmManagerTestActivity.this, 0, intent, 0);
        AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);

        alarmManager.set(AlarmManager.RTC_WAKEUP, cal_alarm.getTimeInMillis(), pendingIntent);  
    }

您好,我想在特定日期设置警报和通知,我正在使用此处给出的代码,但我无法在特定日期设置警报。请让我知道这里的错误是什么。

提前致谢

4

1 回答 1

0

设置报警代码

Intent intent = new Intent(cont, AlarmReceiverActivity.class);
        intent.putExtra("id",getid);
        PendingIntent penintent = PendingIntent.getBroadcast(cont, getid,
                intent, 0);
        AlarmManager alm = (AlarmManager) cont.getSystemService(ALARM_SERVICE);
        alm.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), penintent);

对您的代码进行一些更改

public class AlarmReceiverActivity extends BroadcastReceiver {
    private static final int MODE_WORLD_READABLE = 0;
    private NotificationManager nm;
    private Database_creat mDbHelper;
    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO Auto-generated method stub
        String descr = null;

        int id = intent.getIntExtra("id",0);



         nm = (NotificationManager) context
                .getSystemService(Context.NOTIFICATION_SERVICE);

              CharSequence from = "To Do List";
              Intent disintent = new Intent(context,Todo_display_win.class);

              disintent.putExtra("id",sub_id);
              Log.v("send to display Id", sub_id);
              CharSequence message = title;
              Notification notif = new Notification(R.drawable.notes,
                        "To do List", System.currentTimeMillis());
              notif.flags=Notification.FLAG_AUTO_CANCEL;

              PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
                      disintent,Notification.FLAG_AUTO_CANCEL);

              notif.setLatestEventInfo(context, from, message, contentIntent);
              nm.notify(1, notif);
              //nm.cancel(1);
              //notif.defaults |= Notification.FLAG_AUTO_CANCEL;




    }

    }
于 2012-05-05T09:17:02.453 回答