Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java ME (J2ME) > Где смотреть log ? |
Автор: Гость_Name 6.7.2005, 15:39 |
На емуляторе все работает, на трубе вылетает при переходе на следуюшее окно. Где можно посмотреть printStackTrace ? Или куда вообше пишется System.err ? Пардон если в FAQ и в форуме не нашел. |
Автор: Dancer 7.7.2005, 11:07 |
подключи свой девайс к гипертерминалу (HiperTerminal в Win). Там увидешь всю инфу, если конечно ты можешь свою трубу как модем использовать. Или нужно будет написать своё приложение, которое сможешь работать через COM. В своём мидлете сначала делаешь соединение с телефоном через COM API, а далее всё что тебе телефон будет кидать, то ты сможешь совим приложением выводить куда хочешь и как хочешь. Кстати, труба какая? |
Автор: Гость_Name 7.7.2005, 20:59 |
Siemens SX1, спасиба я попробую. |
Автор: Corwin 10.8.2005, 14:20 |
Та же проблема. Телефон Nokia 7610. Подцепился гипертерминалом к девайсу "Nokia 7610 USB #2". Отзывается, на ATI3 выдает: Nokia 7610. Однако System.out и System.err уходит в пустоту. Программа стартует и тут же вываливается, налицо какой-нить exception, вот только как понять, какой? На эмуляторах все функционирует... Получается, что нет возможности выяснить, что там внутрях происходит? |
Автор: Dancer 10.8.2005, 15:16 | ||||
В HyperTerminal нужно выбирать не USB чего-то там. А конкретный COM порт, на которм у тебя будет отображаться мобилка в Диспетчере устройств. Код для активации подсоединения кабеля к мобилке, для логирования:
Класс Logger:
|
Автор: javastic 11.8.2005, 09:28 | ||
А в Alert в момент исключения почему ошибку не вывести? Мог бы ещё код сюда запостить, не весь, а там где у тебя сомнения в работе. Трудно так в кошки-мышки играть. |
Автор: Corwin 11.8.2005, 12:04 |
Спасибо за советы, но ничего не получилось... Во всех портах по-прежнему тишина. Похоже, USB с точки зрения телефона вовсе не comm0, а разбираться в апи лениво. Перехват System.out/err не удался. И uncaught exceptions так и останутся за кадром. Все сообщения заменю на алерты, глядишь, что-нить накопаю... |
Автор: Dancer 11.8.2005, 13:42 | ||
попробуй comm1 и у меня такое предчуствие, что на Nokia comm0 зарезирвирован под какую то хрень, может быть даже под ИК. Кстати, посмотри перед тем как начнёшь что-то делать, что какие порты в телефоне тебе доступны, ниже приведён небольшой код, думаю разобраться не сложно:
|
Автор: javastic 11.8.2005, 15:45 |
А так же, если у тебя телефон не древний, то в нём должен быть модем, который должен был установиться в Винде. Вот там ты и можешь посмотреть как твой порт называется и какой он.![]() |
Автор: Corwin 12.8.2005, 12:19 |
2 Dancer: на емуляторе код отрабатывается на ура, а на телефоне System.getProperty("microedition.commports") отдает null... Типа, нету портов ваще. 2 javastic: так тоже делал - бесполезняк, тишина... Да и откуда там чему взяться, если в порт никто ниче не пишет. А все же, есть какой-нить способ перехватить printStacktrace? getMessage() дает маловато инфы... |
Автор: javastic 12.8.2005, 12:26 |
Попробуй ещё потестировать на различных эмуляторах, может где ещё вывалится с такой ошибкой? Во! Мысль пришла. Я не знаю какой эмулятор ты используешь, но всё же. Я пользую СониЕриксон, там с обычным эмулятором установился ещё один, который называется SonyEricsson (Device on debug). Если при разработке выбрать его, то программа запускается прямо на телефоне и прямо на нём можно делать отладку! Так ты 100% поймаешь своего жучка. И ещё проверь, нормально ли ты установил дрова в ОС к модему своего телефона. У меня тоже был глюк, иногда через термиал просто прекращался опрашиваться модем, приходилось перезапускать телефон. Драйвера переставил и всё стало Ок. ![]() |
Автор: Corwin 12.8.2005, 13:14 |
На других эмуляторах тоже все работает без проблем. Да в общем это и не важно, багу я все равно найду, не мытьем так катаньем :-) А вот на будущее, знать бы как стандартный вывод перехватить... |
Автор: Dancer 12.8.2005, 14:45 | ||
как раз таки это будет тот порт, на которм компутер определяет телефон, но а я говорит про порт, который определяется в самом телефоне, то есть когда мы шнурок подсовываем, телефон долже же с портом работать и ему по-хрену мороз на какой-там порт его комп определяет. У телефона свои COMM порты, они и начинают с 0 нумероваться. Но если выводится null, то скорее всего из Java у этой мобилки нету поддержки передачи данных через шнурок. |
Автор: javastic 12.8.2005, 14:55 |
Ну так правильно, за коннект и обмен данными должна отвечать какая-то программа (менеджер, драйвер), она когда устройство находит то прописывает у себя на какой порт принимать/отдавать с устройства и на какой порт компа принимать/отдавать. Терминальная программа уже ведет обмен с портом компа. Так что определенный модем трубы опознается в том случае если порт был найден Виндой (например). И в систему эта информация записывается. К сожалению не могу показать, т.к. у меня сейчас старый монохромный Филипок, который вообще сложно куда либо подключить. |