Lib_jsr256 - Работа с сенсорами телефона
Вложений: 1
Библиотека немного доработана. Теперь можно обращаться к любым сенсорам.
Для начала неплохо бы вызвать функцию get_version, которая вернет вам установленную на телефоне версию JSR256 или строку "null" если данный JSR там не установлен. Собственно, если вернется "null", то вызов других функций библиотеки может привести к зависанию приложения. Следующим шагом неплохо бы получить весь список сенсоров, которые есть в телефоне. Для этого служит функция get_list, которая вернет результат в виде строки, разделенной символом "|" в формате: имя_датчика|имя_сенсора|контекст|.... Мой телефон, к примеру, выдал такой список: PHP код:
Датчики axis_x, axis_y, axis_z принадлежат к сенсору acceleration, а в сенсоре battery_charge содержится два датчика: battery_charge и charger_state. Также есть счетчик шагов, датчик наличия гарнитуры и другие, но сейчас они меня мало интересуют. Теперь, если я хочу получать данные от какого либо сенсора (не датчика!) я вызываю функцию Init, которая принимает 3 параметра: имя сенсора, контекст сенсора и количество датчиков в сенсоре. К примеру, мне нужно прослушать датчики сенсора акселерометра. Тогда вызывать нужно так: Init('acceleration', 'user', 3); а для прослушивания датчика состояния батареи нужно вызывать: Init('battery_charge', 'device', 2); Ну и конечно получить данные от датчика сенсора можно функцией get_value, которая принимает только номер датчика. Таким образом, пример программы для прослушивания, к примеру, состояния батареи: PHP код:
Вот другой пример, черный шарик, который катается по экрану в зависимости от наклона аппарата: PHP код:
Если у вас есть другие интересные датчики обязательно попробуйте поопрашивать их. |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Идём к iPhone играм :)
_________________ Sony ericsson W710 - есть акселерометр (о Idou и говорить не хочу) |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Спасибо большое, odd!
На Nokia 5800 пока не удалось заставить работать тестовый пример. Пытаюсь докопаться до истины. Установка плагина для поддержки JSR256 не помогла: http://www.forum.nokia.com/info/sw.n...r_s60_5_0.html Upd. Всё работает. Осталось выяснить, работало ли до установки плагина =) С нетерпением жду либы с возможностью обращения к другим устройствам. Ещё раз спасибо! =) А возможно ли реализовать обработку случая, когда нет поддержки акселерометра, чтобы приложение не вылетало? Nokia E61, например, ругается на необработанное исключение. |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Nokia N82 пример не завелся, пишет "Необработаное исключение". Просьба Bruteo выложить пример, который завелся на 5800
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Например, так.
Код:
Program JSR256test; |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Пример даже не скомпилился. Переделал так:
Код:
Program JSR256test; |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Попробуй перед запуском Init и остальным выяснить версию jsr256.
Если там возвращается null, то нечего и соваться делать всё остальное. |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Возможно ли узнать соостояние заряда батареи на обычном телефоне? Например: 6233i
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Цитата:
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Пробовал получить список на нок6233i и симС65.. Виснет прога в начале... (и get_version не помогает)
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Цитата:
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Цитата:
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Следовательно нет. Да и вообще предложение отписываться о моделях телефонов, на которых либа смогла получить информацию о сенсорах.
|
Ответ: Lib_jsr256 - Работа с сенсорами телефона
program g;
uses jsr256; var a:string; begin a:=get_version; drawtext(a,1,1); repaint; delay(3000) end . - не запускается. Cannot create class in system package. Остальные ф-ции - аналогично. |
Ответ: Lib_jsr256 - Работа с сенсорами телефона
Мда. Как показывает практика, лучше не вызывать даже get_version, иначе такая проверка может быть фатальной для телефонов, с отсутсвием сенсоров.
Лучше проверять вручную с помощью вызова PHP код:
стоит ли дальше делать инициализацию библиотеки или совсем не стоит. |
Часовой пояс GMT +4, время: 15:47. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot