Как получить локальное уведомление в Android при остановке приложения? - PullRequest
2 голосов
/ 28 июля 2011

Я разрабатываю одно приложение для Android, которое использует локальное уведомление с помощью Alarm Manager и BroadCast Receiver.Я получаю уведомление без ошибок по умолчанию.Я не получаю уведомления, если я принудительно остановил свое приложение, используя настройки-> Приложение-> ManageApplication-> MyApplication-> ForceStop.Мой код

Чтобы запланировать событие

        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.MINUTE, 2);
        Intent intent = new Intent(this, AlarmReceiver.class);
        intent.putExtra("alarm_message", "O'Doyle Rules!");
        PendingIntent sender = PendingIntent.getBroadcast(this, 192837,
                intent, PendingIntent.FLAG_UPDATE_CURRENT);
        AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
        am.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), sender);

Мой BroadCast Receiver

try 
        {
             Bundle bundle = intent.getExtras();
             String message = bundle.getString("alarm_message");
             Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
             Intent i=new Intent(context,AlertActivity.class);
             i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
             context.startActivity(i);     
        } 
        catch (Exception e) 
        {     
            e.printStackTrace();
        }

Пожалуйста, дайте мне несколько советов, чтобы решить мою проблему.Заранее спасибо

Ответы [ 3 ]

0 голосов
/ 20 апреля 2012

Это не сработает, вы должны сделать следующее:

Calendar cal = Calendar.getInstance(); 
cal.setTimeInMillis(SystemClock.elapsedRealtime());
cal.add(Calendar.MINUTE, 2);

... и так далее ...

0 голосов
/ 27 апреля 2013

API forcetoppackage отменит сигналы тревоги, связанные с пакетом Так что в будущем ничего не случится.

forceStopPackage () отправит трансляцию с действием «package_restart», AlarmManagerService прослушает эту трансляцию и удалит все тревоги, установленные приложением, принудительно остановленные.

0 голосов
/ 28 июля 2011

Можете ли вы объяснить это немного подробнее ... я думаю, без использования какого-либо фонового сервиса или виджета приложения, как вы можете ожидать, что ваше приложение продолжит работать даже после принудительного закрытия ???

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...