如何在Android应用中设置多个闹钟

时间:2014-08-24 16:30:38

标签: android alarm receiver

现在我可以一次添加一个警报并且它可以正常工作。

//这是我获取闹钟时间的代码。

public void add(查看v)

{   String S1;

    e1=(EditText) findViewById(R.id.editText1);
    S1 = e1.getText().toString();
    e2=(EditText) findViewById(R.id.editText2);
    e3=(EditText) findViewById(R.id.editText3);
    e4=(EditText) findViewById(R.id.editText4);
    DatePicker Dp = (DatePicker)findViewById(R.id.datePicker1);
    TimePicker Tp = (TimePicker)findViewById(R.id.timePicker1);
    int hour = Tp.getCurrentHour();
    int minute = Tp.getCurrentMinute();
    int day = Dp.getDayOfMonth();
    int month = Dp.getMonth();
    int year = Dp.getYear();
    String phno = e3.getText().toString();
    String smsmessage = e4.getText().toString();
    Calendar cal = Calendar.getInstance();
    cal.set(Calendar.HOUR,hour);
    cal.set(Calendar.MINUTE,minute);
    cal.set(Calendar.DAY_OF_MONTH,day);
    cal.set(Calendar.MONTH,month);
    cal.set(Calendar.YEAR,year);
    Intent intent = new Intent(this, AlarmReceiver.class);
    intent.putExtra("alarm_message", S1);
    intent.putExtra("contact_number", phno);
    intent.putExtra("message",smsmessage);
    PendingIntent sender = PendingIntent.getBroadcast(this, 192837, intent,   PendingIntent.FLAG_UPDATE_CURRENT);
    AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
    am.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), sender);

Toast.makeText(this, "Alarm set for :"+hour+"/"+minute+"/-"+day+"/"+month+"/"+year, Toast.LENGTH_SHORT).show();
    this.finish();
}

这是我使用广播接收器扩展的AlarmReceiver类

          public class AlarmReceiver extends BroadcastReceiver{
        EditText e1;
        @Override
        public void onReceive(Context arg0, Intent arg1) {
        // TODO Auto-generated method stub

        try {


            Bundle bundle = arg1.getExtras();
            String message = bundle.getString("alarm_message");
            String phone = bundle.getString("contact_number");
            String Message = bundle.getString("message");

            Intent newIntent = new Intent(arg0, Message.class);
            newIntent.putExtra("alarm_message", message);
            newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            if(phone != "")
            {
            SmsManager sms = SmsManager.getDefault();
        sms.sendTextMessage(phone,null,Message,null,null);
        Toast.makeText(arg0, "Message Sent", Toast.LENGTH_SHORT).show();
            }
        final MediaPlayer mp = MediaPlayer.create(arg0,R.raw.alert);
        mp.start();
            arg0.startActivity(newIntent);


     } catch (Exception e) {
            Toast.makeText(arg0, "Error", Toast.LENGTH_SHORT).show();
            e.printStackTrace();

        }
}

现在如何添加多个闹钟。>?

0 个答案:

没有答案