Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
#1

Notification из сервиса не будит устройство - Программирование Android

20.06.2015, 00:51. Просмотров 593. Ответов 14
Метки нет (Все метки)

Здравствуйте!
Notification из сервиса не будит устройство, но исправно работает при активном телефоне. Как помочь делу?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2015, 00:51     Notification из сервиса не будит устройство
Посмотрите здесь:
Android Два сервиса и Notification
Notification sound Android
Кнопки в Notification Android
Android AlarmManager + Notification
Android Notification с картинкой
Уведомления Notification Android
Android Иконки Notification в Android 5
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
20.06.2015, 22:23     Notification из сервиса не будит устройство #2
У меня нормально будит. Надеюсь помог.
mcGurov
3 / 3 / 0
Регистрация: 30.07.2013
Сообщений: 99
20.06.2015, 22:27     Notification из сервиса не будит устройство #3
И у меня нормально, даже при неактивном телефоне...
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
23.06.2015, 12:51  [ТС]     Notification из сервиса не будит устройство #4
На двух разных устройствах пробовал. На одном вообще не будит, на другом - только через малое время. Не могли б вы поделиться кодом?
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
23.06.2015, 12:58     Notification из сервиса не будит устройство #5
Покажи лучше свой код.
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
23.06.2015, 14:40  [ТС]     Notification из сервиса не будит устройство #6
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
public class MyService extends Service {
    NotificationManager nm;
    final String LOG_TAG = "myLogs";
    int i = 0;
    Date now;
    Timer timer;
    TimerTask tTask;
    long interval = 2000;
    String time;
    DB myDb = new DB(this);
 
    @Override
    public void onCreate() {
        super.onCreate();
        Log.d(LOG_TAG,"MyService onCreate()");
        timer = new Timer();
        tTask = new TimerTask() {
            public void run() {
                nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                Log.d(LOG_TAG,"run");
                sendNotif();
            }
        };
        timer.schedule(tTask, 1000, interval);
    }
 
    @Override
    public void onDestroy() {
        super.onDestroy();
        interval = 0;
        timer.cancel();
        Log.d(LOG_TAG, "onDestroy");
        nm = null;
    }
 
    public int onStartCommand(Intent intent, int flags, int startId) {
        time = intent.getStringExtra("time");
        
        return START_REDELIVER_INTENT;
    }
 
    void sendNotif() {
        if (interval == 0)
            return;
        Log.d(LOG_TAG, "running sendNotif!");
        now = new Date();
        SimpleDateFormat sdfNow = new SimpleDateFormat("HH:mm");
        String nowTime = sdfNow.format(now);
        Log.d(LOG_TAG, "nowTime=" + nowTime + "time=" + time);
        if (nowTime.equals(time)) {
            myDb.open();
            Log.d(LOG_TAG, "time ok!");
            SimpleDateFormat sdf = new SimpleDateFormat("dd.MM");
            Date date = new Date();
            String today = sdf.format(date) + "%";
            Log.d(LOG_TAG, "today=" + today);
            String query = "select _id, name, surname, birthday from mytable where image = "
                    + R.drawable.clock_green
                    + " and birthday like '"
                    + today
                    + "';";
            Cursor c = myDb.execQuery(query);
            if (c.moveToFirst()) {
                Log.d(LOG_TAG, "Найдено совпадение!");
                int surnameColIndex = c.getColumnIndex("surname");
                int nameColIndex = c.getColumnIndex("name");
                String name = c.getString(surnameColIndex) + " "
                        + c.getString(nameColIndex) + " и др.";
                // 1-я часть
                Notification notif = new Notification(R.drawable.ic_launcher,
                        "Ура!", System.currentTimeMillis());
 
                // 3-я часть
                Intent intent = new Intent(this, Start.class);
                // intent.putExtra(MainActivity.FILE_NAME, "somefile");
                PendingIntent pIntent = PendingIntent.getActivity(this, 0,
                        intent, 0);
 
                notif.setLatestEventInfo(this, "Не забудь",
                        name, pIntent);
 
                // ставим флаг, чтобы уведомление пропало после нажатия
                notif.flags |= Notification.FLAG_AUTO_CANCEL;
                notif.defaults |= Notification.DEFAULT_SOUND;
                notif.defaults |= Notification.DEFAULT_VIBRATE;
 
                // отправляем
                nm.notify(i, notif);
                nm = null;
                i++;
            }
            myDb.close();
        }
 
    }
 
    public IBinder onBind(Intent arg0) {
        return null;
    }
}
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
23.06.2015, 16:46     Notification из сервиса не будит устройство #7
А как уведомление должно будить устройство? Само уведомление приходит. Что ещё нужно?
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
05.07.2015, 22:35  [ТС]     Notification из сервиса не будит устройство #8
Цитата Сообщение от Mikalai Посмотреть сообщение
А как уведомление должно будить устройство? Само уведомление приходит. Что ещё нужно?
В большинстве случаев, при спящем телефоне ничего не происходит (если отсрочка времени больше 20 минут, то при спящем телефоне ничего не произойдет, не говоря о периодических уведомлениях с интервалом в сутки)
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
06.07.2015, 09:02     Notification из сервиса не будит устройство #9
Что подразумевается под "будит"? В андроиде это понятие специфичное. Должен экран включиться или просто в фоне уведомление вылезти в шторку?
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
06.07.2015, 15:58  [ТС]     Notification из сервиса не будит устройство #10
Цитата Сообщение от Rube Посмотреть сообщение
Что подразумевается под "будит"? В андроиде это понятие специфичное. Должен экран включиться или просто в фоне уведомление вылезти в шторку?
Если включен экран - все отлично и уведомление вылазит. Если телефон не трогать минут 10 и экран погас, а в это время сервис шлет уведомление, то слышим звук и при включении экрана видим в шторке уведомление. Если не трогать телефон пару часиков и сервис должен по времени выслать уведомление, то ничего не происходит. Звука нет, включив телефон видим, что время для отправки давно прошло, а никакого уведомления то и нет...
Тестировал на разных андроид устройствах - везде такая проблема.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
06.07.2015, 16:20     Notification из сервиса не будит устройство #11
Значит сервис прибивается мусорщиком, флаги надо смотреть.
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
06.07.2015, 16:25  [ТС]     Notification из сервиса не будит устройство #12
Цитата Сообщение от Rube Посмотреть сообщение
Значит сервис прибивается мусорщиком, флаги надо смотреть.
Код всего сервиса привел выше
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
07.07.2015, 09:51     Notification из сервиса не будит устройство #13
А как он вызывается? Читали тут?
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
10.07.2015, 17:50  [ТС]     Notification из сервиса не будит устройство #14
Читал.
Цитата Сообщение от Rube Посмотреть сообщение
А как он вызывается?
Вызывается из активности при помощи startService(new Intent(this, MyService.class));
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2015, 20:20     Notification из сервиса не будит устройство
Еще ссылки по теме:
Notification Уведомления в Андроид Android
Android Notification и выключенный экран
Android Notification в определённое время
Android Notification - запуск MainActivity
Android Доступ к Notification из Activity

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

Или воспользуйтесь поиском по форуму:
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
26.11.2015, 20:20  [ТС]     Notification из сервиса не будит устройство #15
Проблема прошивки MIUI, адаптированной под Jiayu g4...Догадался поставить родную прошивку и все заработало
Yandex
Объявления
26.11.2015, 20:20     Notification из сервиса не будит устройство
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru