Neuling möchte GPS Tracker Service für eigene Zwecke programmieren

  • Antworten:3
Martin
  • Forum-Beiträge: 2

08.08.2017, 10:21:18 via Website

Hallo,

direkt zu Begin:
ich suche nebenbei selber weiter um voran zu kommen, ich erhoffe mir hier allerdings ein wenig Hilfe die diesen Prozess etwas beschleunigt ... :-)
Es kennt eh wohl jeder, wenn man neu ist und etwas nicht kennt, kann selbst eine Kleinigkeit 2h dauern, wenn man es weiß sinds zum Teil nur 5min.

Hintergrund:
An sich habe ich momentan bis zum Start vom Informatikstudium ( Bachelor Angewandte Informatik ) noch viel Zeit / Freizeit und ich hatte schon länger die Idee, dieses kleine "Projekt" für mich umzusetzen.

Worum es genau geht:
Ich wollte mir für meine Webseite einen GPS Tracker basteln, das Handy sendet seine aktuellen GPS Daten an meine Datenbank, die loggt die Daten und man kann sie in einem gesicherten Bereich sich angucken.

Wozu?
Falls das Handy mal geklaut wird, oder verloren geht ... dann sollte es sehr sinnvoll sein :D
Oder falls mal mir etwas mit dem Motorrad passiert, hoffe ich dass in dem Moment das GPS Signal präzise ist gg

Ich finde die Idee einfach Interessant :)

Was bereits fertig ist:
Die komplette Empfängerseite. Ich hatte gelesen, dass Android Apps einfach HTTP POST an eine php datei schicken können, dementsprechend habe ich bereits alles eingerichtet, die Empfängerphp Datei liegt bereit, die DB ist dahinter angeschlossen und die Ansicht steht auch, wenn ich mit einem Formular dort Post Daten hingebe, dann funktioniert alles einwandtfrei.

Aufbau der App:
Permissions:
- Internet
- GPS Coarse / Fine
- Handy Daten ( wie man es hält, G Kräfte )

Die App soll quasi immer im Hintergrund sein ( auch wenn das Display aus / locked ist ), also quasi ein Service.
Ansicht soll einfach sein, dass man Settings hat wo man den Updateintervall einstellen kann oder automatischen Modus.
Bei gewähltem Intervall soll einfach nach X Zeit das GPS Signal gesendet werden.
Den Automatischen Modus stelle ich mir so vor:
Evtl gibt es Events die Anzeigen, dass das Handy bewegt wurde?
Jedenfalls wollte ich einen listener auf sowas legen und dann, je nachdem wie das Handy bewegt wurde, das GPS Signal senden.
Wenn das Handy still liegt wird halt nichts gesendet, sobald es bewegt wird je nach Zeit / Entfernung.

Appstand:
Von der App her steht leider bis jetzt noch nichts.

Ich habe mir das Android Studio runtergeladen, finde mich leider gar nicht zurecht. Evtl liegt das daran, dass ich statt "blank" die "SettingsActivity" wählte? :x

Ein paar Tutorials habe ich mir bereits angesehen, leider scheinen die wohl "outdated" zu sein? Geholfen haben sie nicht wirklich :x

Infos die mir fehlen:
- Wie richte ich die App als Hintergrundservice ein?
- Ähnliche Beispiele?

Falls jemand passende Tipps hat wäre ich sehr dankbar :)
Evtl ein aktuelles Tutorial zur "SettingsActivity" wäre auch nicht schlecht :x

Ich werde mich mal heute Nachmittag weiter mit beschäftigen, im worst case brauch ich halt etwas länger und das hier wird ein Monolog (angel)

Über konstruktive Hilfe würde ich mich freuen :)

Lg

Antworten
swa00
  • Forum-Beiträge: 3.704

08.08.2017, 11:51:02 via Website

Hallo Martin,

willkommen im Forum ..

Zwei Dinge , die mir sofort aufgefallen sind :

Die App soll quasi immer im Hintergrund sein ( auch wenn das Display aus / locked ist ), also quasi ein Service.

Das ist unter Android nur bedingt möglich, es gibt keinen 24/7 service. Eine App oder ein Service kann jederzeit
vom System beendet werden . Es gibt hier zu einige mehr oder weniger funktionierende Workarounds.
Erfordert aber schon fundamentale und praxisnahe Erfahrung.

Hier erst mal das Grundwissen über Services
http://www.vogella.com/tutorials/AndroidServices/article.html

Http Request müssen grundsätzlich in einem Thread eingebettet sein, oder man bedient sich Libraries.
http://www.vogella.com/tutorials/AndroidBackgroundProcessing/article.html
https://developer.android.com/reference/android/os/AsyncTask.html
https://github.com/koush/ion

Wenn du natürlich noch nie unter Android programmiert hast, dann würde ich Dir an dieser Stelle
ggf anraten , erst ein einfacheres Projekt zu realieren und dich ordenlich in OOP einarbeiten.

Java / C++ ist ein gutes Stück entfernt von PHP/Html

— geändert am 08.08.2017, 11:51:22

Liebe Grüße - Stefan
[ App - Entwicklung ]

Martin

Antworten
Martin
  • Forum-Beiträge: 2

08.08.2017, 12:22:40 via Website

Danke für die ausführliche gute Antwort! :)

Das mit dem bedingten Service wundert mich, whatsapp läuft ja eig auch 24/7 im hintergrund ( selbst wenn man die app geschlossen hat ) und meldet sich, sobald man eine msg hat.

Danke für die Links, werde ich mir definitiv angucken!

Und ja, ich habe noch nie unter Android programmiert :/
An sich habe ich langjährige Erfahrung mit HTML / CSS / JS + PHP / SQL, allerdings hast du Recht, es ist mehr als ein gutes Stück von Android entfernt :-)

Ich werde mir die Sachen durchgucken und wirklich wohl erstmal etwas simples realisieren und die Kenntnisse dann nutzen.

Mal sehen :)

Antworten
swa00
  • Forum-Beiträge: 3.704

08.08.2017, 12:30:22 via Website

Hallo Martin

Das mit dem bedingten Service wundert mich, whatsapp läuft ja eig auch 24/7 im hintergrund ( selbst wenn man die app geschlossen hat ) und meldet sich, sobald man eine msg hat.

Na ganz einfach , weil es kein normaler Java/Android Service ist - das basiert auf einer Cloud-Push Technik
https://firebase.google.com/docs/cloud-messaging/

Und weite Teile davon sind im Kernel integriert (linux)

— geändert am 08.08.2017, 12:37:12

Liebe Grüße - Stefan
[ App - Entwicklung ]

Martin

Antworten