Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.93
HekuToc
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 5
#1

GPS Tracker - Программирование Android

16.12.2013, 21:08. Просмотров 2067. Ответов 5
Метки нет (Все метки)

Функционал: шлёт GPS координаты по UDP.
Струкутра:
  • Activity - запускает и останавливает сервис, отображает кол-во отправленных и принятых пакетов, позволяет менять некоторые настройки (частота отправки, сервер)
  • Service - Запускает LocationListener, UDP и по получению обновления от GPS или истечению некоторого (keep Alive) периода отсылает пакет.
Уже написанный код на моём телефоне (Samsung Xcover 2 [4.1.2]) Работает без нареканий.
Стоит запустить на Galaxy S3, S4 срабатывает спячка и сообщения от телефонов перестают слаться. Задействовал WakeLock, но он много жрёт. Ещё видел AlarmManager, но до него пока не добрался.

Как сделать сервис стабильнее, чтобы его не закрывало системой (фишка с иконкой не очень то и помогает)
Как корректно будить телефон раз в секунду/три/... по обновлению GPS

P.S. к сожалению дома имею только свой андроид
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2013, 21:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос GPS Tracker (Программирование Android):

Убрать диалог о включении GPS и иконку GPS. Тихий запуск GPS - Программирование Android
Здравствуйте! Подскажите есть ли возможность включить GPS в тихом режиме, чтобы пользователь не догадался об этом! На данном...

Прослушка GPS - Программирование Android
Добрый день Регистрирую прослушку на доступность GPS так: BroadcastReceiver receiver = new BroadcastReceiver() { ...

Работа с gps - Программирование Android
помогите пожалуйста! как получать скорость с помощью gps?

gps и 2 устройства - Программирование Android
Доброго времени суток! У меня вопрос возможно ли сделать так чтобы программа находила другие устройства с этой же программой по gps. А...

Обман с GPS - Программирование Android
Добрый день. Работаю в такси. Задача следующая: Рассчет стоимости заказа идет по километражу, на основе GPS Как сделать чтобы...

GPS трекер - Программирование Android
Здравствуйте! Вот пишу диплом, завтра надо сдавать на проверку. Помогите пожалуйста! Дело горит! Надо реализовать отслеживание себя и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
16.12.2013, 22:12 #2
HekuToc, сервис не закрывается. Телефон уходит в спящий режим, так и должно быть. Если вам действительно нужно такое поведение, смотрите в сторону AlarmManager
1
HekuToc
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 5
17.12.2013, 01:32  [ТС] #3
А есть какая возможность собирать логи просыпаний на чужих устройствах?
0
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
17.12.2013, 14:49 #4
HekuToc, всмысле что юзер разблокировал экран? Тогда ресивер с фильтром ACTION_USER_PRESENT dev.android
0
HekuToc
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 5
17.12.2013, 16:11  [ТС] #5
Ну так, что я даю друзьям свой криво-косой софт, а через день качаю логи с их телефона и анализирую
0
HekuToc
0 / 0 / 0
Регистрация: 30.09.2012
Сообщений: 5
16.01.2014, 17:39  [ТС] #6
AlarmManager дал свои результаты. Но теперь перестали срабатывать извещения от GPS LocationManager. А их фишка (locationListener) про 100 метров и раз в 5 минут очень практичная.
Как ещё можно опрашивать раз в 5 минут и 100 метров, не производя своих вычислений пройденного пути и лишних сравнений?

Добавлено через 34 минуты
UPD: если я правильно понимаю логику, то :

1)BroadCastReceiver сработал
2)Захват WakeLock
3)Подписка на обновления GPS
4)Получение GPS FIX
5)Отказ от подписки на обновления
6)Формируем пакет, посылаем.

Так ли это? Как лучше разбить по потокам?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2014, 17:39
Привет! Вот еще темы с ответами:

GPS service - Программирование Android
Написал сервис для работы GPS однако при попытке вытащить данные просто выдаёт 0 класс реализующий работу c GPS: package...

Gps и расстояние - Программирование Android
Вопрос такой, можно ли по координатам которые записываются раз в 5 минут посчитать расстояние? Или это как-то по другому делать?

Gps speed - Программирование Android
Всем привет! есть простая задача получить текущюю скорость. Нагуглил метод getSpeed(), но так и не смог понять как с ним работать. На...

GPS координаты - Программирование Android
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.01.2014, 17:39
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru