![]() |
|
Модераторы: javastic, AntonSaburov |
![]()
|
|
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
Можно определить версию и билд ява-машины девайса?
-------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Dancer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
а зачем тебе это нужно?
Для девайсов, где Java встраиваемая эта версия никак не коррелирует с JDK версиями (потому что не только Sun машину используют,как правило в основном не Sun машину встраивают Для смартфонов, куда ты можешь ставить Java машину, ты можешь это посмотреть, но для чего? -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
Это нужно, чтобы удостовериться, что проблема не в коде, не в девайсе, а именно в реализации библиотечной функции.
-------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Dancer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
сделай тестовый мидлет и прогони его. То как реализуют библиотечную функцию при портировании KVM в телефон - это "страшное дело"
Опиши что именно тебе нужно (классы, методы, передаваемые параметры, что ожидаешь получить и т.д.), может помогу тестик накатать. (можешь в приват, если светиться не хочешь) -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
Вообщем, это не такой уж и секрет - пусть все знают
Схематично проблема выглядит так:
в цикле считывается информация с GPS - приемника. Через 5 сек.(SE M600) - 5 мин.(SE P990) происходит блокировка функцией read(...). Почему? GPS - приемник при этом включен. Дело в девайсе? На остальных тестируемых девайсах такой проблемы не наблюдается. Если хоть бы таймаут можно было устанавливать, после которого блокирующая функция read(...) бросает Эксцепшн, а то этого тайм-аута уж слишком долго приходится ждать. Так что -------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Dancer |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
Я думаю, что как-то вот так. Писалось не коленке То есть, читаешь каждый раз что-то заводишь таймер, если следующее чтение происходит раньше чем таймер истечёт, то таймер устанавливается новый. В таймер должна быть проверка на то, в каком состоянии мы сейчас находимся, на момент, когда таймер сработал. Если в состоянии чтения, то значит что-то пошло не там и мы тут повисли. (как и что тебе в этой ситуации предпринимать, думаю ты сам уже давно решил Где-то в другом месте далаешь вызовы MyClass.readData() по необходимости. (ну или как-то так. думаю принцип понятен) -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
||||
|
|||||
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
в этом-то и вся загвоздка: если прервать тред, в котором произошла блокировка, то подсоединиться к GPS-у уже неудастся, т.к. открытое соединение нужно вначале закрыть. А как его закрыть, когда оно занято блокирующей функцией read()? -------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Dancer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
всё в null, и при следующем обращении, делай заново коннекшн.
Connection у тебя должен быть один единый, если он null, то значит его сначала нужно открыть, если уже есть, то брать из этого коннекшена InputStream. -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
| Antropoid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
Что в null? StreamConnection cn ? Если его ставить в null, а потом делать коннект, то вылетает Эксцепшн с информацией о том, что коннекшн уже открыт. Закрыть же его не удается, т.к. соединение занято(функция read() не отпускает). Если же StreamConnection cn , то и здесь выпадает java.io.IOException. -------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
|||
|
||||
| Antropoid |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 786 Регистрация: 1.6.2006 Где: &Ukraine==Ode ssa Репутация: 13 Всего: 16 |
Проблема решена.
Блокировка происходит из-за переполнения Bluetooth-буфера девайса. Оказывается отправка происходит за плечами программиста! Если делать
после
то все работает. Другое дело, что skip(128) данных мне не подходит, но это уже совсем длугая история -------------------- ![]() Задыхаясь от восторга заниматься чепухой. |
||||
|
|||||
![]()
|
FAQ раздела лежит здесь! |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |