Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java ME (J2ME) > Звонок при работе мидлета!


Автор: SatanClaus 26.6.2007, 15:26
Здравствуйте, все!
Слышал, что если при работе мидлета происходит звонок, то мидлет само-собой вырубается...
Или бывают случаи, когда мидлет внезапно пропадает с экрана...
Так вот, говорили мне, что есть в мидлете специальные методы, которые обрабатывают
такие события... Подскажите какие... Или направте в нужном направлении. Спасибо!  smile 

Автор: Gershkovich 26.6.2007, 16:30
Почитай про жизненный цикл мидлета - в каждой книжке про него пишут (Application lifecycle)

Когда проникнешься,  тебе лишь надо правильно написать startApp, destroyApp, pauseApp


А вообще качни PDF JSR-37 c
http://jcp.org/aboutJava/communityprocess/final/jsr037/index.html

там в описании класса MIDlet подробно описан его жизненный цикл (с кортинкаме smile )

Автор: SatanClaus 26.6.2007, 16:31
Собственно нешел приблизительное решение проблемы http://swjscmail1.sun.com/cgi-bin/wa?A2=ind0107&L=kvm-interest&D=0&P=67743

Вкратце напишу:
Код

public void pauseApp() {
     while (! this. display. getCurrent(). isShown()) {
         resumeRequest();
         try {
             Thread. sleep( 5000); // 5 seconds
         } catch (InterruptedException ie) {}
     }
}


Другого решения пока нет... Это еще не проверял...  smile 

Автор: John2 19.7.2013, 18:58
У меня аналогичный вопрос.
В мидлет заложена возможность выполнения звонка или перехода на сайт непосредственно с него.
Код

midlet.platformRequest(url);

В телефонах Nokia всё работает нормально: при выполнении звонка (или переходе на сайт) мидлет находится в фоне. После завершения звонка или закрытии браузера, вновь виден тот экран мидлета, с которого было совершено действие.
В телефоне LG GW300 после завершения действия вновь виден мидлет, только не тот экран, с которого было выполнено действие, а первоначальный экран, как при запуске программы.
Я понимаю, что в разных моделях разная реализация, только как это обработать никак не пойму.
Скачал вышеупомянутый PDF JSR-37 и ознакомился.
Если я правильно понял, то необходимо реализовать pauseApp(), как в примере выше, но непонятно как конкретно. Подскажите, пожалуйста, какой-то пример.
Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)