Мне нужно вызвать будильник в соответствии с значениями времени в БД. Я прошел через множество примеров, но смутил меня. Может ли любой орган помочь установить повторяющийся сигнал тревоги для данного времени, например, 2011-07-03 02: 00: 00: 000. и он должен повториться в течение 5 минут.
Я предлагаю вам создать сервис. Служба может считывать базу данных и устанавливать аварийный сигнал с помощью класса AlarmManager. Вы можете использовать методы AlarmManager set() или setRepeating() на основе вашего использования. http://developer.android.com/reference/android/app/AlarmManager.html#set%28int,%20long,%20android.app.PendingIntent%29
здесь приведен пример использования AlarmManager.
long triggerAtTime = SystemClock.elapsedRealtime() + triggerAfterTime;
AlarmManager mgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, YourAlarmReceiver.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
mgr.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, triggerAtTime, pi);
Класс YourAlarmReceiver (обычно) может быть BroadcastReceiver, где ваша логика продолжается, когда происходит тревога.
There is no public API for the Calendar application
, хотя, поскольку он является родным интерфейсом для Календаря Google, вы можете отправить событие в Календарь Google через свой API-интерфейс GData.
Вы можете использовать класс AlarmManager
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 10);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);