2015-02-20 7 views
0

Мое устройство MC65 Windows Mobile 6.5 убивает мое приложение .NET CF 3.5 после возобновления работы в спящем режиме. Приложение обычно работает, устройство переходит в спящий режим или я нажимаю кнопку питания. Затем я снова нажимаю кнопку питания, устройство просыпается, но приложение больше не отображается на экране не в диспетчере задач. Я не могу найти никаких журналов в своем журнале приложений, без execeptions и т. Д. Является ли Windows Mobile каким-то образом убивающим без каких-либо трассировок приложений, которые используют множество ресурсов? Я наблюдаю, что если устройство подключено к зарядному устройству, такой ситуации не происходит.Motorola MC65 - Windows Mobile 6.5 убивает мое приложение после возобновления

В чем причина? Как предотвратить это?

+0

Ваше приложение делает IO на SD-карте? –

+0

Ну, да. Само приложение установлено на SD CARD и записывает на него файлы журналов. – cubesoft

+3

Возможно, SD-карта отключена, когда устройство переходит в спящий режим. Вы можете попробовать, если ваше приложение будет работать, если вы запустите его из файловой системы флэш-памяти, а также выполните регистрацию там (или сделайте ваш журнал надежным в отношении исчезающей файловой системы) –

ответ

1

Хотя Windows Mobile может убивать приложения, если ресурсы становятся низкими, и приложение не реагирует на сообщения WM_HIBERNATE, это не будет причиной для вашей текущей настройки.

Приложение исчезнет с экрана, если оно будет сведено к минимуму/скрыто. Это также может произойти, если другое приложение выходит на передний план и закрывается позже. Стек окна затем изменяется, и ваше приложение больше не находится на переднем плане.

Приложение может аварийно завершить цикл приостановки/возобновления, если он обращается к ресурсам, которые будут приостановлены, когда устройство войдет в состояние приостановки. Эти ресурсы могут быть сетевыми или объемными (хранилищами) ресурсами. То, что приостанавливается во время приостановки, зависит от настроек управления питанием. Сеть может быть приостановлена ​​для экономии энергии, или смонтированный том (карта памяти) может быть выгружен (хотя это не должно быть в случае с реальными устройствами).

Таким образом, ваше приложение использует приостановленное сетевое соединение и ваше приложение не устойчиво к изменениям в сети или, как указано в примечаниях, устройство выгружает драйвер карты памяти во время приостановки/возобновления. Позднее либо переместите приложение в хранилище устройства, либо обратитесь к поставщику за другим профилем управления питанием, где сохраняется внешнее хранилище во время приостановки/возобновления.

0

Это приводит к тому, что ваше приложение и поддерживаемые файлы могут находиться на карте памяти. Переместите приложение и все файлы в другое хранилище, например: папку приложения. Перейдите по ссылке для получения более подробной информации: https://social.msdn.microsoft.com/Forums/en-US/f0fc4eae-dcaa-402d-b76f-5d737d3a4267/wm-65-app-crashs-when-power-button-was-pressed-twice-to-turn-on-the-display?forum=windowsmobiledev