Einsatz von Google-Maps, GPS und mehr
Transcrição
Einsatz von Google-Maps, GPS und mehr
Android-Apps Google-Maps v2 Eh 04/13 2/20 Die einfachste Map-App entwickeln Achtung! Die seit März 2013 alleinig gültige Google Maps Android API v2 ist nicht kompatible mit der Vorgängerversion. Auch die alten Schnittstellenschlüssel können nicht mehr verwendet werden! Die Entwicklung von Kartenapps ist nur noch mit einem Hardware-Device möglich (also mit angeschlossenem eigenen Smartphone). Minimum: API-Level 8 (Android 2.2). Eh 04/13 ● Google Play services einbinden ● Generierung des Schnittstellenschlüssels ● Fingerabdruck des Projektes erzeugen ● Im Google APIs Service den Schlüssel generieren ● MapTest App erstellen ● Google Play Bibliothek verlinken ● Eigenes Smartphone als Hardware-Device verwenden 3/20 Google Play services einbinden Eh 04/13 4/20 Google Play services einbinden Google Play Bibliothek in den Workspace importieren Eh 04/13 5/20 Google Play services einbinden Pfad zur Bibliothek im SDK-Ordner. Z.B.: C:\Program Files\android\adt-bundle-windows-x86-20130219\ sdk\extras\google\google_play_services\libproject\google-play-services_lib Alle Apps, die diese Bibliothek benutzen, müssen darauf verweisen! (später) Eh 04/13 6/20 Google Maps API-Key Debug-Keystore für ein Debug-Zertifikat Ort merken! debug.keystore gilt nur ein Jahr, dann läuft eclipse/android nicht mehr. Also jährlich debug.keystore löschen, Projekte cleanen und neu laufen lassen. Es wird dann automatisch ein neuer debug.keystore erstellt. Eh 04/13 7/20 Google Maps API-Key erzeugen ● ● Kopieren von debug.keystore in einen Ordner unter dem Arbeitsverzeichnis (keine Leerzeichen! z.B. D:\java\android\keys\) Mit keytool.exe (..\java\jre7\bin\keytool.exe) wird daraus ein SHA-1 Fingerabdruck generiert. Damit keytool.exe von überall aufgerufen werden kann, sollte im System die PATH-Variable erweitert werden (auf das bin Verzeichnis zeigen lassen). Die einfachste Lösung: Den debug.keystore und cmd.exe in das binVerzeichnis vom JRE kopieren und dort den Fingerabdruck in der Command Shell (cmd.exe) generieren: keytool -list -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android ● Eh 04/13 Als Ergebnis erhält man u.a. einen SHA-1 Zertifikatsfingerabdruck. 8/20 Google Maps API-Key erzeugen Projekt in der Google APIs Konsole registrieren: Eh 04/13 https://code.google.com/apis/console/ 9/20 Google Maps API-Key erzeugen Eh 04/13 10/20 Google Maps API-Key erzeugen Eh 04/13 11/20 Google Maps API-Key erzeugen SHA-1 Fingerabdruck Eh 04/13 Semikolon Package-Name der App 12/20 Google Maps API-Key erzeugen Der API key wird für das Manifest der App benötigt. Achtung: Der Schlüssel basiert auf dem debug.keystore, die App kann so nicht veröffentlicht werden … (später) Eh 04/13 13/20 MapTest-App erstellen anpassen Eh 04/13 14/20 MapTest-App erstellen anpassen Manchmal hilft: debuggable="true" Wichtig: vor dem Veröffentlichen wieder entfernen! Eh 04/13 15/20 MapTest-App erstellen anpassen Eh 04/13 16/20 Google Play Bibliothek verlinken Im Kontextmenü (rechte Maustaste) der App ganz unten den Eintrag Properties auswählen. Achtung: Dies ist für jede App, die diese Bibliothek verwendet zu wiederholen! Eh 04/13 17/20 Google Play Bibliothek verlinken Eh 04/13 18/20 Entwicklung mit Hardware-Device ● Am Smartphone in den Einstellungen das USB-Debugging erlauben. ● Bis Android 3.2: Einstellungen | Apps | Entwicklung ● Android 4.0/4.1: Einstellungen | Entwickleroptionen ● ● USB-Treiber installieren! ● Nach dem Anschließen sucht Windows nach Treibern. ● Onlinesuche unterbinden ● Eh 04/13 Ab Android 4.2 sind die Entwickleroptionen zunächst versteckt! Um diese sichtbar zu machen → Einstellungen | Über das Telefon | Build-Nummer 7-mal antippen !!! Ab jetzt sind es die Entwickleroptionen dauerhaft verfügbar. → Manuell suchen, sie befinden sich im SDK-Ordner unter extras\google\usb-driver\ 19/20 Entwicklung mit Hardware-Device Eh 04/13 → Run. Jetzt sollte auf dem Smartphone eine Google-Map zu sehen sein. Was damit u.a. alles möglich ist zeigt die App MapsPoi. Achtung, diese basiert auf der nicht mehr gültigen Maps API v1, ist aber eine gute Anregung und kann in vielen Teilen direkt umgesetzt werden. Download unter ehlers-web.de 20/20 Weiterentwicklung der Maps-App Übung: ● Marker einzeichnen ● Linien, Kreise, Rechtecke, Text hinzufügen ● Karte oder Satellitenbilder … ● Zoom, Kompass, … Alle Infos dazu unter → https://developers.google.com/maps/documentation/android/ Eh 04/13