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