J2ME notifyDestroyed () - PullRequest
       8

J2ME notifyDestroyed ()

2 голосов
/ 02 августа 2009

Метод notifyDestroyed () вызывается мидлетом, чтобы уведомить AMS о своем желании перейти в уничтоженное состояние. как только это уведомление будет получено AMS, он будет предполагать, что мидлет уже выполнил весь процесс очистки ресурсов перед вызовом метода notifyDestroyed ().

Поэтому он собирается убить мидлет, а не вызывать метод destroyApp ().

Ответы [ 2 ]

1 голос
/ 03 августа 2009

AMS определенно не будет вызывать destroyApp () после вызова notifyDestroyed ().

Неправильный AMS, который мог бы это сделать, может привести к переполнению стека при запуске правильного мидлета.

1 голос
/ 02 августа 2009

Кажется, что лучше всего вызывать destroyApp () перед notifyDestroyed ().

try {
// Call destroyApp to release resources
destroyApp(false);
// Arrange for the MIDlet to be destroyed
notifyDestroyed();
} catch (MIDletStateChangeException ex) {
// MIDlet does not want to close
 }
...