Я начинаю разрабатывать Android-приложение. Теперь я хочу установить алимент уведомлений в своем приложении. У меня есть определенные даты, и я хочу получить уведомление в эти даты в определенное время. Как я могу это сделать? Заранее спасибоУстановить уведомление для конкретной даты и времени
-1
A
ответ
3
используйте класс AlarmManager, который запускает код в фоновом режиме. поместить этот код в основной деятельности:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.your layout);
boolean alarm = (PendingIntent.getBroadcast(this, 0, new Intent("ALARM"), PendingIntent.FLAG_NO_CREATE) == null);
if(alarm){
Intent itAlarm = new Intent("ALARM");
PendingIntent pendingIntent = PendingIntent.getBroadcast(this,0,itAlarm,0);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 3);
AlarmManager alarme = (AlarmManager) getSystemService(ALARM_SERVICE);
alarme.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),60000, pendingIntent);
}
}
создать новый класс, который будет контролировать, если он находится в час уведомить.
public class BroadcastManager extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
try {
String yourDate = "04/01/2016";
String yourHour = "16:45:23";
Date d = new Date();
DateFormat date = new SimpleDateFormat("dd/MM/yyyy");
DateFormat hour = new SimpleDateFormat("HH:mm:ss");
if (date.equals(yourDate) && hour.equals(yourHour)){
Intent it = new Intent(context, MainActivity.class);
createNotification(context, it, "new mensage", "body!", "this is a mensage");
}
}catch (Exception e){
Log.i("date","error == "+e.getMessage());
}
}
public void createNotification(Context context, Intent intent, CharSequence ticker, CharSequence title, CharSequence descricao){
NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
PendingIntent p = PendingIntent.getActivity(context, 0, intent, 0);
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
builder.setTicker(ticker);
builder.setContentTitle(title);
builder.setContentText(descricao);
builder.setSmallIcon(R.drawable.yourIcon);
builder.setContentIntent(p);
Notification n = builder.build();
//create the notification
n.vibrate = new long[]{150, 300, 150, 400};
n.flags = Notification.FLAG_AUTO_CANCEL;
nm.notify(R.drawable.yourIcon, n);
//create a vibration
try{
Uri som = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone toque = RingtoneManager.getRingtone(context, som);
toque.play();
}
catch(Exception e){}
}
в проявленном положить это:
<receiver
android:name="BroadcastManager"
android:label="BroadcastReceiverAux">
<intent-filter>
<action android:name="ALARM" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
дать такое разрешение:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
Смежные вопросы
- 1. Как запланировать таймер для конкретной даты и времени в Android?
- 2. Установить уведомление до даты
- 3. Получение актуальной даты и времени конкретной страны
- 4. уведомление о изменении даты и времени
- 5. Получить UTC время для конкретной даты и времени в быстром?
- 6. Установить локальное уведомление для определенного времени
- 7. Как установить локальное уведомление для определенного времени?
- 8. Как получить штамп времени на основе даты (получение метки времени для времени конкретной даты)
- 9. Данные для конкретной даты
- 10. Преобразование конкретной даты/времени в метку времени с помощью JavaScript
- 11. Как установить будильник для конкретной даты в Android?
- 12. date_sun_info() для конкретной даты календаря
- 13. Выбор даты и времени для выбора даты
- 14. Cron выражения для конкретной даты
- 15. Загрузить данные для вчерашней даты и конкретной даты
- 16. Расписание getstream.io Уведомление/Деятельность для будущей даты или времени
- 17. Как установить от даты и времени в Todate выбора даты
- 18. Как установить форматирование даты времени
- 19. Как установить смещение UTC для даты и времени?
- 20. PickerView для даты и времени
- 21. Как установить значение viewbag времени типа ввода даты и времени
- 22. Отправить уведомление для конкретной группы в odoo
- 23. Установить уведомление о выбранном пользователем времени
- 24. Установка конкретной даты для начала datepicker
- 25. установить уведомление об андроиде на дату с даты выбора даты
- 26. PHP разбор конкретной строке даты
- 27. Как установить уведомление о выбранной дате и времени пользователя?
- 28. Ошибка: даты и времени столбец Неправильное значение даты и времени: ''
- 29. различные значения для даты и времени, даты и времени полей с отметкой времени в MySQL
- 30. Преобразование даты и времени
Добро пожаловать к переполнению стека! Для некоторых советов о том, как задавать вопросы, см. Http://stackoverflow.com/help/on-topic. Есть ли конкретная проблема, с которой вы столкнулись? Не могли бы вы поделиться некоторыми из кода, который у вас есть прямо сейчас? – Onots