Закрытие ресурсов при выходе из приложения BlackBerry

Как лучше всего закрыть ресурсы в приложении BlackBerry? Я использую ресурсы на протяжении всей жизни приложения и просто хотел бы зарегистрировать какой-нибудь слушатель, который будет вызываться, когда приложение вот-вот выйдет. Есть ли простой хук, который вызывается перед закрытием приложения?


person Cristian    schedule 18.02.2009    source источник


Ответы (4)


Перезаписать функцию MainScreen.close() экрана, который последним выталкивается из стека пользовательского интерфейса. Этот метод close(), скорее всего, является последним методом, который вызывается перед уничтожением вашего приложения.

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

person kozen    schedule 30.04.2009

Одна вещь, которую вы можете сделать, это перехватить клавишу ESC. Когда в стеке экрана находится только ваш главный экран ( UiApplication.getScreenCount() ) и нажата клавиша ESC, вы можете очистить свои ресурсы.

  1. Кроме того, вы можете зарегистрировать SystemListener для прослушивания обратных вызовов powerOff() для уничтожения потоков или очистки ресурсов.
  2. Кроме того, UIApplication.deactivate() также является хорошим местом для очистки/приостановки работы, когда ваше приложение работает в фоновом режиме.
person Jacques René Mesrine    schedule 23.03.2009

Один момент, как упомянул Эндрю, должен быть продуман. Если вам нужно прыгать через обручи, чтобы освободить ресурсы, попробуйте изменить дизайн так, чтобы ресурсы освобождались через одну контрольную точку. Это облегчит вам задачу. и более ремонтопригодный.

person omermuhammed    schedule 18.02.2009

Когда ваше приложение завершает работу, все ресурсы возвращаются операционной системой.

У вас определенно есть правильное представление о том, что высвобождение ресурсов — это хорошо, но если вам нужно прыгать через обручи, чтобы сделать это, когда ваше приложение закрывается, то это может быть нецелесообразно.

person Andrew Grant    schedule 18.02.2009