2013-03-31 6 views
0

Я пытаюсь сделать напоминание в андроиде. Я уже написал код, который хранит информацию о дате и времени для напоминания вместе с заголовком напоминания. Теперь я хочу уведомить пользователя в соответствующее время о напоминании о том, что я планировал использовать службу, которая будет отслеживать текущее время систем и время, хранящееся в базе данных. У меня есть путаница в том, как это сделать. Может ли кто-нибудь предложить что-нибудь.Как постоянно отслеживать системное время

Единственный способ, которым я могу это сделать, - получить всю строку в таблице остатков и постоянно поддерживать системное время, чтобы проверить, соответствует ли она любому, указанному в данных извлеченных строк. (Но это i предположение было бы очень неэффективным)

ответ

0

Вы должны использовать AlarmManager для запуска событий. Вы не должны пытаться воссоздать этот механизм самостоятельно (похоже, это то, что вы планируете делать).

AlarmManager запустит сервис, чтобы сделать что-то в определенное время или интервалы:

Вот хороший SO пример: How to start Service using Alarm Manager in Android?

Вы можете передать Extra с намерением к идентификатору держать ручку в которое вызывается. Как и в этом так вопрос:

stackoverflow.com/questions/15731259/how-to-use-requestcode-in-pendingintents

+0

Даже я думал использовать Alarm диспетчера, но проблема в том, что я хочу, чтобы менеджер тревоги в уведомлять службу о триггере, а не о системе, поскольку мне нужно получить дополнительную информацию (то есть остальную информацию о напоминании), так что это возможно? –

+0

Вам просто нужно сохранить дополнительную информацию где-нибудь в своем приложении (SharedPreferences легко, если это просто), а затем, когда срабатывает Тревога, вы можете совместить информацию напоминания (вы можете использовать второй аргумент в PendingIntent - requestCode для определить, какое напоминание было вызвано). Я вполне уверен, что вам нужно использовать AlarmManager, и есть много учебников об этом случае использования. Не забудьте отметить правильный ответ. – Booger

+0

Спасибо ... попробовал бы ваше предложение и ответил бы на состояние :) –

Смежные вопросы