Переодическая отсылка координат на сервер в бэкграунде.

Ответить
brucemax
Сообщения: 117
Зарегистрирован: 01 апр 2012, 16:09
Откуда: Минск
Контактная информация:

Переодическая отсылка координат на сервер в бэкграунде.

Сообщение brucemax » 30 июл 2013, 16:43

Вопрос прост как сама суть :D Но перечитав доки гугла с новым апи для работы с координатами (где используется LocationClient), плюс проштудировав http://stackoverflow.com по этому вопросу, я однозначного ответа так и не нашёл. В итоге для себя пришёл к следующему предварительному решению:
- само приложение для определения и отправки координат у меня без гуи.. просто сервис..(ну надо мне так :) )
- другой прогой(с гуи) через aidl связываюсь с сервисом, в нём запускаю AlarmManager c определённым интервалом.
- по истечении интервала срабатывает ресивер, в нём ставиться wakelock(чтобы телефон не заснул пока я разбираюсь с координатами) и из этого ресивера стартует сервис, который первым делом проверяет последние известные координаты (getLastKnownLocation()), смотрит время их определения и если оно не удовлетворяет выбранному критерию, запрашивает новые, и ждёт их.
- затем идёт процедура отправки данных на сервер, после чего вызывается метод в ресивере (через интерфэйс и колбэк например) который отменяет wakelock..
Вот в общем-то и всё.. Хотелось бы поинтересоваться у знающих и тех, кто с этим сталкивался не изобрёл ли я велосипед.. и есть ли другие решения, может уже готовая библиотечка..?

brucemax
Сообщения: 117
Зарегистрирован: 01 апр 2012, 16:09
Откуда: Минск
Контактная информация:

Re: Переодическая отсылка координат на сервер в бэкграунде.

Сообщение brucemax » 02 авг 2013, 18:30

Не ну как так-то!?)

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Переодическая отсылка координат на сервер в бэкграунде.

Сообщение KamiSempai » 02 авг 2013, 19:03

brucemax писал(а):Не ну как так-то!?)
Видимо на этом форуме еще никто не занимался созданием программы для слежки :)
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Ответить