Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как завершить мидлет? 
V
    Опции темы
nerezus
  Дата 3.1.2007, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: нет
Всего: 43



Собственно 
Код

System.exit(0);

вызывает SecurityException.

Как завершить мидлет?


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
nerezus
Дата 3.1.2007, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: нет
Всего: 43



Код

try {
                destroyApp(false);
            } catch (MIDletStateChangeException e) {
                e.printStackTrace();
            }
            notifyDestroyed();


FIN )


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
javastic
Дата 4.1.2007, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Не надо использовать System.exit(0), используй notifyDestroyed(), а если хочешь сделать какую-то обработку перед закрытием то вызывай перед этим destroyApp(false).


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
nerezus
Дата 28.2.2007, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: нет
Всего: 43



Снова вопрос: как закрыть мидлет из одного из классов? Раньше использовал 
Код

int error = 1/0;
, но теперь пришлось запихнуть это в блок try, который ловит все ошибки, поэтому данная фишка не срабатывает.

Добавлено @ 21:55 
Вобщем временно заменил Exception на определенный вид ошибки, но хотелось бы более красивый вариант )


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Dancer
Дата 28.2.2007, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



1/0 - это 5+ изврат!!!! 
надеюсь поможет: http://forum.mobilab.ru/viewtopic.php?t=99...92fc55d080a5b16


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
nerezus
Дата 28.2.2007, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: нет
Всего: 43



Эх, по ссылке его делают синглтоном ) у меня уже Canvas синглтон =) Некрасиво все классы делать синглтонами имхо =) Ну да ладно, как 1/0 перестанет устраивать - сделаю так =)


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
javastic
Дата 1.3.2007, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Можно сделать так:
Код

public void exitMidlet() {
  destroyedApp(false);
  notifyDestroyed();
}


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


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
Dancer
Дата 1.3.2007, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 29.4.2005
Где: Nizhniy Novgorod

Репутация: 33
Всего: 37



ну, вообще синглетон там класс, наследуемый от MIDlet. Чем тебя смущает это? и вообще разьве ты как то собираешься его использовать в приложении ещё по другому? если да, то это вообще изврат 100% smile. (я имею ввиду использовать в приложении класс наследуемый от MIDlet, а потом плодить объекты данного типа или далее наследоваться от него. хотя может быть будет какое-то применение, но я его пока что не догоняю smile ) 
Делать его сиглетоном для того, чтобы можно было обратиться к объекту MIDlet и вызвать методы на паузу или закрытие приложения из любого другого класса приложения. (вроде бы это очевидно и кристально понятно)
а причём тут твой синглетон Canvas - не понял smile (ну есть у тебя один единственный объект для Canvas - хорошо, что мешает или смущает в том, что какой-то другой объект в приложении будет то же одним единственным?)


--------------------
У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! smile
PM MAIL   Вверх
W0LF
Дата 1.3.2007, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



Цитата(nerezus @  28.2.2007,  22:35 Найти цитируемый пост)
Эх, по ссылке его делают синглтоном ) у меня уже Canvas синглтон =) Некрасиво все классы делать синглтонами имхо =) Ну да ладно, как 1/0 перестанет устраивать - сделаю так =) 

Некрасиво делать так - 
Код

try {
    application.run() 
} catch (Exception exc) {
    application.stop();
} 

А вот када нужно синглтон применять - 
Цитата

- Должен быть ровно один экземпляр класса, легко доступный всем клиентам;
- единственный экземпляр должен расширяться путем порождения подклассов, и клиентам нужно иметь возможность работать с расширенным экземпляром без модификации своего кода.

 Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес
"Приемы объектно-ориентированного проектирования. Паттерны проектирования"


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
javastic
Дата 1.3.2007, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 19
Всего: 27



Dancer, чего то я не понял, это ты кому ответил? smile


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0498 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.