2016-12-07 16 views
0

Является ли кто-то с некоторыми знаниями о знании, способным сказать мне, какой конкретный подшипник GeofencingEvent.getTriggeringLocation().getBearing() возвращается?Какой конкретный подшипник выполняет `GeofencingEvent.getTriggeringLocation() .getBearing()` return?

Поскольку мой тщательное тестирование показало мне, что: -

  • Значение возвращается НЕ подшипник, что пользователь путешествует в когда запуская Geofence.

  • Значение возвращается НЕ подшипник расположения Геозоны от запуска местоположения (или наоборот)

getTriggeringLocation() documentation удобно ничего о bearing() не упоминается. Так может ли кто-нибудь просветить меня относительно того, какое значение возвращается на самом деле приравнивается?

Из-за тщательного тестирования он, похоже, не возвращает никакой корреляции между моим Geofence, запуском местоположения и направлением путешествия?

Случайное число кто-нибудь ???

[Тестовый пример LogCat экстракт]

Д/MainActivity (13349): Местоположение: (51,2758, -1,1168) подшипник: 276,0 (вычислено: 277,6) Скорость: 55.07 Д/MainActivity (13349): Местоположение: (51.2759, -1.1175): 278.0 (рассчитано: 276.7) Скорость: 55.18 D/MainActivity (13349): Местонахождение: (51.2760, -1.1183): 280.0 (рассчитано: 279.9) Скорость: 55.28 D/MainActivity (13349)): OnReceive: passedGeofenceReceiver получил трансляцию Д/MainActivity (13349): Ввод GeoFence - НОМЕР Инициированного = 1. TRIGGER расположение (51.2760, -1,1183) подшипник: 78

D/MainActivity (13349): TRIGGERED GEOFENCE ID: 1481037411000 Местонахождение: (51.2761, -1.1192)

+0

Когда вы проверяли, где устройство расположено и какова была ориентация устройства? У меня есть сильное подозрение, что он может использовать геомагнитный датчик для определения подшипника, если он не смог получить его из GPS. –

+0

Спасибо за ваш вклад. Интересная теория. Я проведу несколько тестов с разными позициями/ориентациями телефона и вернусь к вам. Однако для целей моего приложения я сейчас просто рассматриваю 'getBearing()' как нерелевантность и вычисляю свою собственную оценку. – SimonH

ответ

0

getBearing() возвращает подшипник в градусах. getTriggeringLocation() принадлежит к классу Location, в котором находится getBearing(). Вы ищете Location

«Подшипник является горизонтальным направлением движения этого устройства и не имеет отношения к ориентации устройства. Он гарантированно находится в диапазоне (0,0, 360,0), если устройство имеет подшипник. "

Глядя дальше, я считаю, что причина его бросает, казалось бы, случайное значение для GeofencingEvent.getTriggerLocation().getBearing() является то, что это тянет место в точке событие было запущено. в то время как это возвращает объект расположение, в документации Location,

Все местоположения, созданные координатором LocationManager, гарантированы t о есть действительная широта, долгота, и метка времени (как время UTC и прошел в режиме реального времени с момента загрузки), все остальные параметры являются необязательными.»

Интересно в вашем использовании его, в то время как она возвращает действительный Location объект, видя, что это местоположение в спусковом крючке, параметр «несущий» является фантомным нулем?

Редактировать: Удивительно, если по какой-то нечетной причине подшипник зеркально отражен ... Посмотрите на колесо степени ниже, в то время как подшипники не являются точными, стоит посмотреть. Возможно, попробуйте добавить 180 в значение GeofencingEvent.getTriggerLocation().getBearing(), чтобы сравнить возврат? ИЛИ Один дает подшипник через против часовой стрелки, а другой - по часовой стрелке, по примеру колеса?

enter image description here

+0

Спасибо за ваш ответ, но я не собирался спрашивать «что такое подшипник?». Возможно, мне лучше изменить вопрос. Я знаю, что такое подшипник. Я задаю вопрос, к какому конкретному признаку возвращается функция GeofencingEvent.getTriggeringLocation() .getBearing(). – SimonH

+0

Особый возврат подшипника - горизонтальное направление движения. – Illdapt

+0

@ Illadept Я боюсь, что это не так. И вот почему я задавал этот вопрос. Я тестировал его, и он определенно НЕ возвращает горизонтальное направление движения. – SimonH