Модуль для работы с gps.
positioning.
POSITION_INTERVAL
Интервал в микросекундах (1000000=1 секунде), период обновления функции position()
positioning.
default_module
()Возвращает число, id установленного по умолчанию модуля гпс.
>>> positioning.default_module()
270526860
positioning.
last_position
()Возвращает последние данные о координатах.
positioning.
modules
()Возвращает кортеж из словарей, доступных устройств на смартфоне.
‘available’ - доступность устройства (0/1)
270526860 - AGPS
270526858 - встроенный гпс
270526873 - блютус гпс
270559509 - данный на базе сети
536979841 - wi-fi сеть
‘name’ - имя устройства
>>> positioning.modules()
[{'available': 1, 'id': 270526860, 'name': u'A-GPS'},
{'available': 1, 'id': 270526858, 'name': u'\u0412\u0441\u0442\u0440\u043e\u0435\u043d. \u043c\u043e\u0434\u0443\u043b\u044c GPS'},
{'available': 0, 'id': 270526873, 'name': u'Bluetooth GPS'},
{'available': 0, 'id': 536979841, 'name': u'Wi-Fi/\u0421\u0435\u0442\u044c'},
{'available': 1, 'id': 270559509, 'name': u'\u041d\u0430 \u0431\u0430\u0437\u0435 \u0441\u0435\u0442\u0438'}]
positioning.
module_info
(module_id)Возвращает словарь, информацию, о модуле
>>> positioning.module_info(270526860)
{'available': 1, 'status': {'data_quality': 1, 'device_status': 3}, 'name': u'A-GPS', 'position_quality': {'time_to_first_fix': 1000000L, 'cost': 2, 'horizontal_accuracy': 10.0, 'vertical_accuracy': 10.0, 'time_to_next_fix': 1000000L, 'power_consumption': 3}, 'capabilities': 127, 'version': u'1.00(0)', 'location': 1, 'technology': 4, 'id': 270526860}
positioning.
select_module
(module_id)Устанавливает стандартным модуль
>>> positioning.select_module(270526680)
positioning.
set_requestors
()хз, без этой функции не работает приемник и надо передать параметры из примера
>>> positioning.set_requestors([{'type':'service', 'format':'application', 'data':'test_app'}])
positioning.
position
(course=0, satellites=0, callback=None, interval=positioning.POSITION INTERVAL, partial=0)course – 0|1 информация о курсе
satellites – 0|1 информация о спутнике
callback – обработчик координат
interval – время в микросекундах, через которые будут передаваться координаты
partial – 0|1 в обработчик придет информация о спутниках, перед расчетом местоположения
Возвращает словарь, координаты позиции с gps
>>> positioning.position()
{'satellites': None, 'position': {'latitude': 65.815685987472534, 'altitude': 90.0, 'vertical_accuracy': 230.45707702636719, 'longitude': 47.181628227233887, 'horizontal_accuracy': 298.0}, 'course': None}
>>> positioning.position(course=1, satellites=1, callback=positioncb, interval=1000000*10, partial=1)
{‘satellites’: {‘horizontal_dop’: 0.85, ‘used_satellites’: 4, ‘vertical_dop’: 0.8, ‘time’: 1376044235.0, ‘satellites’: 6, ‘time_dop’: 0.5199}, ‘position’: {‘latitude’: 65.815685987472534, ‘altitude’: 90.0, ‘vertical_accuracy’: 230.45707702636719, ‘longitude’: 47.181628227233887, ‘horizontal_accuracy’: 298.0}, ‘course’: {‘speed’: 0, ‘heading’: nan, ‘heading_accuracy’: nan, ‘speed_accurace’: 0}}
positioning.
stop_position
()Останаливает запущенную функцию position()
Почему то у меня он не заработал, с ним вываливается весь скрипт, так что будьте аккуратней
import positioning
positioning.set_requestors([{"type":"service", "format":"application", "data":"test_app"}])
print positioning.position()
# {'satellites': None, 'position': {'latitude': 40.111924347701, 'altitude':147.5, 'vertical_accuracy': 120.0, 'longitude': -88.228399329257, 'horizontal_accuracy': 71.9983825683594}, 'course': None}