2011-12-23 12 views
-1

вопрос очень странно:Установить Android OS готов выполнить Alarm менеджер в течение многих месяцев

я сделал приложение, установившие менеджер тревоги, что обед услуга (это делает некоторые операции и в конце stopself()) каждые 5 минут. В течение как минимум 6 месяцев или более (подключено).

Это потому, что я преобразовал свой телефон в веб-камеру (IP-радио для просмотра панорамы), поэтому служба начала каждые 5 минут снимать фотографию и отправлять ее через Wi-Fi. Таким образом, нет никакого взаимодействия с пользователем, и телефон находится вне пользовательского контроля. Мое приложение отлично работает с очень хорошим результатом, но через 5-6 дней что-то происходит, и приложение падает. Я думаю, что это приложение Andorid OS, которое закрывает приложение, но я не могу понять, как он может отменить диспетчер расписания ди-менеджера.

Приложение установлено на Samsung Galaxy ACE, я думаю, телефона и отменить все остальные приложения на телефоне, чтобы это не было проблемой.

Есть лучший способ убедиться, что приложение будет работать в течение 6 месяцев или более?

Было бы лучше сделать индивидуальный ром для этой настойки?

Извините за мой английский ..

+0

"Что-то разбился" ничего не сказать. У вас есть логарифмический вывод? Используете ли вы службу или трансляционный приемник (это было бы невосприимчиво к сбоям) –

+0

Frome logcat внутри телефона (не подключен к компьютеру) я не могу найти ничего. Кажется, что андроид убил приложение без какой-либо причины (или нужна память?). Я использую диспетчер аварийных сигналов, который обедает услугой (которая начинается и останавливается через несколько секунд) каждые 5 минут. Для времени, когда приложение закрыто. Я не могу объяснить лучше! Thanx! – Lork

ответ

0

Android может (и на самом деле делает) убить приложения для своих внутренних причин. Поэтому, если вам что-то нужно возродить, лучше всего использовать широковещательный приемник и запланировать повторение тревоги с помощью диспетчера аварийных сигналов (у вас есть выбор, будет ли он просыпаться по телефону или нет, или это будет в точное время или есть амунт, если разрешено скольжение). Я также обнаружил, что запланированные тревоги не всегда выдерживают перезагрузку телефона, но вы можете преодолеть это, зарегистрировав прослушиватель BOTT_COMPLETE, который перепланирует ваши briadcasts при перезагрузке.

Я разрабатываю приложение, которое делает это:

https://github.com/ko5tik/camerawatch

+0

Thanx для ответа, но я не понимаю. «Если вам что-то нужно возродить, лучший способ - использовать широковещательный приемник». В настоящее время я использую диспетчер аварийных сообщений (я сказал), которые запускают сервис, и все работает нормально. Проблема в том, что после того, как человек много часов работы (6 дней) и Android убивают приложение И диспетчер аварийных сигналов! Теперь блокировка слежения не имеет значения (я использую ее для выполнения всего выполнения службы, но она отбрасывается в конце, потому что мне она не нужна, есть диспетчер alarma, который перезапускает службу). Это моя текущая веб-камера: http://foicam.altervista.org/visualizzawebcam.php?codice=cd299bd9a07e2e51# – Lork

+0

Скажите, пожалуйста, если это может решить проблему: создайте приложение без какого-либо контроля пользователя (запустите автоматический диспетчер аварийных сообщений на onCreate() и установите его автозапуск при загрузке). Затем создайте другое приложение, которое со службой, вызываемой другим будильником, перезагрузите телефон каждые 6 часов, и он также будет автозапуском. Так что, если основное приложение выйдет из строя, другое приложение поможет перезагрузить весь телефон, решив все проблемы. Это правда? thanx (конечно, нужен корневой телефон, но вы понимаете, что это не проблема.) – Lork

+0

Вам не нужен автозапуск - трансляция BOOT_COMPLETE также делает трюк. просто перезагрузите его каждые 6 (или сколько угодно) часов. Когда вы предоставляете веб-камеру, вы можете делать это в ночное время (когда темно) –