Использование Alarm Manager, даже если приложение закрыто?

Я использую Alarm Managerдля обновления виджета с Service. У меня два разных вопроса.

Первый вопрос :Я звоню в службу с намерением Alarm Manager. Вот так:

alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, MyService.class);
pi = PendingIntent.getService(context, 0, i, PendingIntent.FLAG_UPDATE_CURRENT);

context.startService(new Intent(context, MyService.class));

Long repeat = Long.parseLong(prefs.getString("update_preference", "600"));
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis(), 1000*repeat, pi);

Это неправильно?

Выглядит и работает правильно. Но когда я просмотрел работающие сервисы, я не вижу имени своего сервиса в списке. Возможно, он не работает как отдельная/отдельная служба. Просто увидел имя приложения (не как службу ). Я не уверен, как разделить или это имеет значение?

Другой вопрос :В течение долгого времени запущенное приложение, управляющее обновлением виджетов, закрывается как-то (вручную или тасккиллером ). Конечно, Alarm Managerостановится, и функции виджета тоже остановятся. Например, нажатие кнопки.

Но Twitter решил эту проблему. Пока виджет активен, если я закрою основное приложение (Twitter )-, которое управляет виджетом -, чем щелкну виджет, каким-то образом виджет вызовет приложение, и оно запустится снова. Так что кнопки работают нормально. Как это возможно?

Будем признательны за любую помощь.

7
задан Ogulcan Orhan 8 May 2012 в 20:28
поделиться