Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.75/65: Рейтинг темы: голосов - 65, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
1

Уведомление по заданному времени

18.11.2015, 02:14. Показов 13327. Ответов 39
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я начинающий программист-самоучка, поэтому прошу помощи. Не могу разобраться как сделать, чтоб выводилось уведомление в заданное время и дату. Например, поздравление с новым годом. Как выводить уведомления понял, а вот как установить его на определённую дату и время? Если можно пример.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2015, 02:14
Ответы с готовыми решениями:

Уведомление по дате и времени
Здравствуйте,хочу попытаться создать простенькое приложение на андроид в программе android studio....

Оповещение по заданному времени и дате
Здравствуйте, есть задача вывести оповещение по заданной пользователем дате и времени. В сети...

Как посчитать сколько времени прошло по заданному интервалу времени
Например сколько времени прошло от 10:00 до 9:59? часовой формат 23 часовой. Пробовал циклами...

Подсчет времени занятия (по заданному времени начала и окончания)
В первой строке написано три целых числа A, B, C (0 ≤ A ≤ 23, 0 ≤ B ≤ 59, 0 ≤ C ≤...

39
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 4
18.11.2015, 04:01 2
Опишите ситуацию полностью. Что за уведомление в какой программе.
0
912 / 560 / 88
Регистрация: 13.02.2014
Сообщений: 2,081
18.11.2015, 08:02 3
naven, поискать по теме никак?
AlarmManager не работает после закрытия приложения
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
18.11.2015, 12:06  [ТС] 4
Приложение с датами. В заданное время надо выводить уведомление. Например, 1 января выводит "Новый год", 23 февраля "День защитника отечества".
0
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
18.11.2015, 13:11 5
попроси друга что бы напомнил
2
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
18.11.2015, 14:34 6
http://android-helper.com.ua/alarm/
оно?
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
18.11.2015, 15:30  [ТС] 7
bastrakov, а как там задать дату?
0
1605 / 1337 / 291
Регистрация: 25.10.2009
Сообщений: 3,487
Записей в блоге: 2
18.11.2015, 16:05 8
naven, там же в ссылке всё написано
long triggerAtMillis
0
912 / 560 / 88
Регистрация: 13.02.2014
Сообщений: 2,081
18.11.2015, 18:46 9
Цитата Сообщение от YuraAAA Посмотреть сообщение
там же в ссылке всё написано
А он по ссылкам не ходит
1
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
18.11.2015, 20:49  [ТС] 10
Rube, не надо умничать.

Добавлено через 1 минуту
YuraAAA, я перешел по ссылке, но толку? Можно подробнее объяснить как задать дату?

Добавлено через 1 минуту
Я же сразу написал, что самоучка начинающий.
0
Pablito
18.11.2015, 20:53
  #11

Не по теме:

Цитата Сообщение от naven Посмотреть сообщение
Я же сразу написал, что самоучка начинающий.
ты же не читал что там написано, по ссылке, самоучки так не делают
и кода никакого своего не показал

0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
18.11.2015, 20:59  [ТС] 12
Паблито, я тебя понял. Но если не хочешь помочь, зачем пустословить и форум засорять. Согласен? Я понимаю, что здесь все супер-мега-программисты и поэтому попросил помощи.
0
1605 / 1337 / 291
Регистрация: 25.10.2009
Сообщений: 3,487
Записей в блоге: 2
18.11.2015, 23:10 13
naven, я тоже самоучка. Как и 95% тут сидящих. По ссылке, которую Вам дали, есть вся информация. Паблито и Rube Вам все верно говорят.
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
21.11.2015, 01:57  [ТС] 14
Ну вот, что у меня получилось. Только уведомление выскакивает сразу, а активити по заданному времени. Как это исправить?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public class MyService extends Service {
  NotificationManager nm;
  
  @Override
  public void onCreate() {
    super.onCreate();
    nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
  }
 
  public int onStartCommand(Intent intent, int flags, int startId) {
    sendNotif();
    return super.onStartCommand(intent, flags, startId);
  }
  
  void sendNotif() {
    Notification notif = new Notification(R.drawable.ic_launcher, "Text in status bar", 
      System.currentTimeMillis());
    
    Intent intent = new Intent(this, MainActivity.class);
    intent.putExtra(MainActivity.FILE_NAME, "somefile");
    PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0);
    AlarmManager alarm = (AlarmManager)getSystemService(ALARM_SERVICE);
    Calendar cal = Calendar.getInstance();
 
    cal.set(Calendar.MONTH, November);
    cal.set(Calendar.DAY_OF_MONTH, 19);
    cal.set(Calendar.HOUR_OF_DAY, 20);
    cal.set(Calendar.MINUTE, 15);
    cal.set(Calendar.SECOND, 10);
     
    notif.setLatestEventInfo(this, "Notification's title", "Notification's text", pIntent);
    
    notif.flags |= Notification.FLAG_AUTO_CANCEL;
    notif.defaults = Notification.DEFAULT_ALL;   
    nm.notify(1, notif);
 
 alarm.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pIntent);
  }
  
  public IBinder onBind(Intent arg0) {
    return null;
  }
}
0
912 / 560 / 88
Регистрация: 13.02.2014
Сообщений: 2,081
21.11.2015, 20:14 15
notif надо перенести в другой сервис, а сервис вызывать из PendingIntent.
Вместо PendingIntent.getActivity - PendingIntent.getService
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
21.11.2015, 21:28  [ТС] 16
Rube, то есть, этот сервис должен быть в другом файле? И еще вопрос. При перезагрузке устройства выводит последний alarm, который уже выполнился. Можно это как то исправить?
0
912 / 560 / 88
Регистрация: 13.02.2014
Сообщений: 2,081
21.11.2015, 21:39 17
В другом да. Надо BroadcastReceiver делать на загрузку устройства, а там запускать заново AlarmManager. Да еще проверять не стало ли время прошлым. Где то на форуме уже писал я про это.
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
21.11.2015, 21:45  [ТС] 18
Да приложение загружается. Но выдает последнее уведомление. Время проверяешь и что это дает?
0
912 / 560 / 88
Регистрация: 13.02.2014
Сообщений: 2,081
21.11.2015, 23:02 19
Это так, на будущее, если период будешь использовать. Впрочем мб такая ситуевина, поставил ты ув. на понедельник, а включил тел только во вторник, бродкаст увидел, что время то прошло и выдал ув. о пропуске события.
0
1 / 1 / 0
Регистрация: 18.11.2015
Сообщений: 73
22.11.2015, 22:20  [ТС] 20
Понял. Спасибо.

Добавлено через 14 часов 43 минуты
Rube, просто если id notifications разный, то после перезагрузки устройства все notifications выводятся. Можно это как то исправить? А то иногда надо чтоб два уведомления рядом выводились, а не заменялись.

Добавлено через 8 часов 27 минут
Или может есть вариант без будильника уведомления выводить?
0
22.11.2015, 22:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2015, 22:20
Помогаю со студенческими работами здесь

Подсказать как сделать по истечение времени уведомление закрылось
Можете подсказать как сделать по истечение времени уведомление закрылось. Идея такая: Уведомление...

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

Смена фона по заданному времени
Как сменить фон по заданному времени Есть скрипт времени ...

Добавить секунду к заданному времени
type time=record hour: 0..23; min, sec: 0..59 end; Описать процедуру SLEDSEC (t1,t2),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru