NaturLotse ON/Ausbauspezifikation

Aus Offene Naturführer
Wechseln zu: Navigation, Suche

(DIESES PLANUNGSDOKUMENT IST VERALTET, aber Informationen hier sind evtl. noch wiederverwertbar, daher sichtbar belassen)

Dies ist ein Planungsdokument für den nächsten Ausbauschritt der NaturLotse App. (Einige Grundfunktionen sind unter Erläuterungen und Hilfe zur Nutzung des NaturLotsen ON beschrieben.)

Es existiert eine "Paket-Lade" App mit den Funktionen Paketverwaltung und Offline-Anzeige geladener Pakete.

1.a Paketverwaltung, Ist-Zustand:

Ein Liste verfügbarer Pakete wird vom Server geholt (xml, zusätzlich hier ein Prüfung ob WLAN oder Mobilfunk-Datennutzung, entsprechend Warnung an Nutzer vor Kosten), Pakete werden dem Nutzer gruppiert präsentiert, auf Klick wird Paketinfo angezeigt zusammen mit 2 Schaltflächen die das Paket mit bzw. ohne Medien ("Notbetrieb") herunterladen. Bei Bestätigung wird in beiden Fällen das Paket OHNE Medien als Zip heruntergeladen, lokal ausgepackt. In der Zip-Datei ist u.a. eine XML-Datei mit einer Liste von Filename/URL aller Medien. Wenn Medien angefordert sind (Normalfall) werden diese "nachgeladen" und ebenfalls lokal gespeichert (Grund für Nachladen: Das Auspacken großer Zip-Dateien funktioniert je nach Modell und freiem Speicher nur unzuverlässig). Die Liste aller lokal bereits heruntergeladener Pakete ist in einer separaten Liste verfügbar, die bereits auf der Startview der App angezeigt wird. Dort können Pakete auch gelöscht werden.

1.b Paketverwaltung, Spezifikation geplanter Verbesserungen:

  1. In der Liste der verfügbaren Pakete (gemäß xml-Liste, zweite View) sollte verfügbare Pakete mit den bereits heruntergeladenen verglichen werden; bereits geladene Pakete sollen markiert werden. Dabei soll das Modifizierungsdatum gemäß xml-Liste mit dem Datum des bereits früher geladenen Pakets verglichen werden. Ist ein neues Paket verfügbar, sollte ein "Update" Button erscheinen. Die Funktion des Update-Buttons ist zunächst lediglich als Löschen und unmittelbar Neuladen des Paketes geplant (intelligentere "Update"-Vergleiche bei denen z.B. unveränderte Bilder nicht neu geladen werdn sind in dieser Ausbaustufe noch nicht vorgesehen).
  2. Die Auswahl "mit/ohne Medien" (Klick auf Paket in der Liste der verfügbaren Pakete, zweite View) sollte ohne Funktionsänderung gestalterisch leicht abgeändert werden, so dass das normale Laden mit Bildern die logisch nächste Schritt ist, und die "Notaktion": "Ohne Bilder laden" nur eine erkenntlich selten zu nutzende Alternative.

2.a Offline-Anzeige geladener Pakete, Ist-Zustand:

Die Pakete beruhen zur Zeit weitgehend auf einfachem html-Pakete mit wenig javascript. Die Planung der App erfolgte bereits 2009, als der Markt von Mobilgeräten noch wesentlich mehr Geräte mit schlechten Browsern enthielt. Die Html-Seiten werden in einer WebView der App angezeigt. Das Zoomen der Bilder ist bereits Teil der html-Erzeugung (mit eigenen Seiten für das Zoomen). Eine Umstellung auf datenbasierte Darstellung in der App (Pakete enthalten JSON) ist grundsätzlich vorgesehen und bereits begonnen, aber nicht Teil dieser Ausbaustufe. Die App fängt eine Liste von Befehlen ("appcmd") ab, die zur Zeit folgende Funktionen unterstützen:

  • Zurück zum Startmenü der App
  • Festhalten des im Appcmd als Parameter übergebenen Namens (hierbei wird in der Android-App zusätzlich bereits Zeit und Geokoordinaten ermittelt und angezeigt, jedoch nicht weiter gespeichert.)

2.b Offline-Anzeige geladener Pakete, Spezifikation geplanter Verbesserungen:

  1. (UNKLAR, evtl. bereits gelöst: Beim Verfolgen von 3 Seiten und Nutzung der seiteninternen javascript.history.back() Funktion, soll die Funktion A -> B -> C back B back A sein. Fehlerhaft zur Zeit noch: A -> B -> C back B back C. Dies scheint ein Android-Bug zu sein, es ist u.U. nötig parallel einen Stack zu verwalten und selbst das "Zurück-" statt "Vorwärtsgehen" zu detektieren.)
  2. Das Anzeigen von Geoposition, Zeit und Name ist zur Zeit nur experimentell in der Android-Version implementiert (s.o). Dies soll grundsätzlich ausgebaut werden, so dass die Werte gespeichert, verwaltet und versendet werden.
  3. Als zusätzliche Daten zusätzlich zu bereits vorhandenem Wiss./Deutschem Namen (übergeben), Geokoordinaten und Zeit (ermittelt) ist (a) das Auslesen einer Genauigkeitsschätzung (Unschärfe der GPS-Bestimmung) und (b) die Erzeugung einer GUID (global eindeutiger Identifier) erwünscht.
  4. Die "Beobachtungen" mit den ob erwähnten Feldern sollen in einer nach Beobachtungszeitpunkt absteigend sortierten (neueste Beobachtung zu oberst) lokalen Liste gespeichert werden (vorzugsweise als sql-lite Tabelle).
  5. Die gespeicherten Beobachtungen sollen in einem einfachen Tabellenformat mit den erwähnten Feldern entsprechenden DarwinCore Feldern per E-Mail versendet werden können
  6. Die gespeicherten Beobachtungen sollen optional (z.B. nach erfolgreichem Versand) gelöscht werden
  7. Unterstützend soll ein Menü in der App eingerichtet werden, welches folgende Funktionen anbietet:
    • Einstellungen/Settings (hier soll es möglich sein, drei Ziel-E-Mail für den Versand zu speichern (z.B. eigene E-Mail und naturgucker.de oder ähnlich), sowie die Option "Meldungen automatisch nach Versand löschen").
    • Meldungen per E-Mail verschicken (genaue Methode ist noch abzusprechen, dazu auch Punkt 3 unten)
    • "Gespeicherte Meldungen einsehen" (-> Anzeige scrollbarer Liste, zunächst keine Suchfunktion implementiert)
    • "Gespeicherte Meldungen löschen"
    • "Hilfe" (Funktionalität bereits implementiert)
    • "Über Naturlotse" (Funktionalität bereits implementiert)

Die Änderungen sollten sowohl für die Android als auch die iPhone-Version durchgeführt werden.

3. Neu, bitte Kosten separat angeben: Um den Benutzer auf dem Mobiltelefon zu entlasten die Daten selbst per email zu verschicken, soll die App die zu versendenden Beobachtungsdaten zusammen mit 1-3 (zuvor unter Einstellungen gespeicherte) E-Mail-Adressen an den Server schicken. Dieser versendet dann die Daten als Anhang einer email. Dazu nötig: Erstellung in php kleinen email-Versandservices auf dem Server, mit folgenden Funktionen:

  • Webservice benötigt einen Zugriffs-Code als Schutz vor Fremdnutzung
  • Übertragung der Daten verschlüsselt (https)
  • Annahme eines beliebigen Dokuments (xml, json oder anderweitig kodiert) plus zwischen 1-3 email-Adressen
  • Versand an diese E-Mail-Adressen.



Notizen:

Ist bei Android eine Erweiterung um Google Maps relativ einfach möglich? Das heißt nach erfolgreicher Bestimmung, kann optional eine Karte angezeigt werden, auf der man den Beobachtungspunkt noch einmal vor dem Speichern verschieben kann. Ressourcen (noch nicht schlüssig ausgewertet):


Siehe auch NaturLotse ON Paket-Konventionen

Quelle: Offene Naturführer, Das Wiki zu Bestimmungsfragen: NaturLotse ON/Ausbauspezifikation (Zuletzt geändert:
Dieses Attribut ist ein Spezialattribut in diesem Wiki.
26 September 2015 08:05:16). Abgerufen am 2. Juni 2025, 11:10 von https://offene-naturfuehrer.de/web/NaturLotse_ON/Ausbauspezifikation