Google Maps API
@lucas_aquiles
Review...
- Ciclo de vida de uma Activity
- Listeners Interfaces
- O que é uma Intent?
- Criação da API KEY do Goolgle Maps
- API V1
- API V2
- Permissões - AndroidManifest.xml
- Review do código do projeto "Compromisso"
O ciclo de vida de uma Activity
●onCreate
●onStart
●onResume
●onRestart
●onPause
●onStop
●onDestroy
Listeners interfaces
●Interfaces implementadas por Activities para
vincular eventos a componentes
ex:
oOnClickListener
oOnLocationListener
obutton.setOnClickListener(new OnClickListener(){
/*...*/
})
O que é uma Intent?
●é um recurso para fazer chamadas ao S.O
oex:
 enviar sms, fazer chamadas, exibir o menu de
configurações
 chamar uma nova Activity passando um
parametro ou não
 acessar recursos provídos por outras aplicações
 ...
Usando o google maps
Google Maps API v1
oMapView
oMd5 hash
 keytool -list -keystore debug.keystore
Google Maps API v2
oMapFragment
oSHA1 hash
Usando o google maps
Google Maps API v1
oMapView
oMd5 hash
 keytool -list -keystore debug.keystore
Google Maps API v2
oMapFragment
oSHA1 hash
Usando o google Maps
O que precisa?
a.google apis baixado no SDK manager
b.uma ADV configurada com a API
c.a API Key do google maps
d.setar as permissões no AndroidManfest.xml
e.declarar o uso da API no Manifest
Usando o google maps
Permissões:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission
android:name="android.permission.ACCESS_FINE_LOCATION" />
declarar a api do google:
<uses-library android:name="com.google.android.maps" />
Usando o google maps
Adicionar a tag MapView no layout.xml:
<com.google.android.maps.MapView
android:id="@+id/map"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:enabled="true"
android:apiKey="@string/maps_api_key"
/>
Lembra das Intents?
●Como ver se o GPS está habilitado?
oAs Intents vão ser as responsáveis por enviar essa
mensagem ao Android
Settings.ACTION_WIFI_SETTINGS
android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS
E esse tal de MapActivity?
●é uma Activity com métodos específico para manipular
Um MapView
todo MapActivity deve implementar:
public void onStatusChanged(String provider, int status,
Bundle extras)
E esse tal de MapActivity
●GeoPoint:
oRecupera uma longitude e latitude (recebe um int
em microdegree) * 1E6
●Overlay
oComponente que pode ser exibido em um MapView
●OverlayItem
oé um item de ItemizedOverlay
●ItemizedOverlay
oGuarda uma coleção de OverlayItem
E esse tal de MapActivity
Quem é quem?
●MapController: Classe utilitaria pra gerenciar
e controlar zoom de um map
●MyLocationOverlay: Um Overlay usado pra
mostrar a posição atual no map
E esse tal de MapActivity
●LocationManager:
oClasse que provê acesso ao sistema de localização
●LocationListener:
orecebe notificações do LocationManager quando a
localização for mudada
odeve implementar:
 onLocationChanged():
 onProviderEnabled():
 onProviderDisabled():
 onStatusChanged():
E esse tal de LocationManager?
●LocationManager:
oClasse que provê acesso ao sistema de localização
●permite recuperar a posição atual a partir de
um provider:
oContext.LOCATION_SERVICE
E esse tal de LocationManager?
●locationManager.getProviders(true)
oGPS_PROVIDER
oNETWORK_PROVIDER
 google maps api - v1

google maps api - v1

  • 1.
  • 2.
    Review... - Ciclo devida de uma Activity - Listeners Interfaces - O que é uma Intent? - Criação da API KEY do Goolgle Maps - API V1 - API V2 - Permissões - AndroidManifest.xml - Review do código do projeto "Compromisso"
  • 3.
    O ciclo devida de uma Activity ●onCreate ●onStart ●onResume ●onRestart ●onPause ●onStop ●onDestroy
  • 4.
    Listeners interfaces ●Interfaces implementadaspor Activities para vincular eventos a componentes ex: oOnClickListener oOnLocationListener obutton.setOnClickListener(new OnClickListener(){ /*...*/ })
  • 5.
    O que éuma Intent? ●é um recurso para fazer chamadas ao S.O oex:  enviar sms, fazer chamadas, exibir o menu de configurações  chamar uma nova Activity passando um parametro ou não  acessar recursos provídos por outras aplicações  ...
  • 6.
    Usando o googlemaps Google Maps API v1 oMapView oMd5 hash  keytool -list -keystore debug.keystore Google Maps API v2 oMapFragment oSHA1 hash
  • 7.
    Usando o googlemaps Google Maps API v1 oMapView oMd5 hash  keytool -list -keystore debug.keystore Google Maps API v2 oMapFragment oSHA1 hash
  • 8.
    Usando o googleMaps O que precisa? a.google apis baixado no SDK manager b.uma ADV configurada com a API c.a API Key do google maps d.setar as permissões no AndroidManfest.xml e.declarar o uso da API no Manifest
  • 9.
    Usando o googlemaps Permissões: <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> declarar a api do google: <uses-library android:name="com.google.android.maps" />
  • 10.
    Usando o googlemaps Adicionar a tag MapView no layout.xml: <com.google.android.maps.MapView android:id="@+id/map" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:enabled="true" android:apiKey="@string/maps_api_key" />
  • 11.
    Lembra das Intents? ●Comover se o GPS está habilitado? oAs Intents vão ser as responsáveis por enviar essa mensagem ao Android Settings.ACTION_WIFI_SETTINGS android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS
  • 12.
    E esse talde MapActivity? ●é uma Activity com métodos específico para manipular Um MapView todo MapActivity deve implementar: public void onStatusChanged(String provider, int status, Bundle extras)
  • 13.
    E esse talde MapActivity ●GeoPoint: oRecupera uma longitude e latitude (recebe um int em microdegree) * 1E6 ●Overlay oComponente que pode ser exibido em um MapView ●OverlayItem oé um item de ItemizedOverlay ●ItemizedOverlay oGuarda uma coleção de OverlayItem
  • 14.
    E esse talde MapActivity Quem é quem? ●MapController: Classe utilitaria pra gerenciar e controlar zoom de um map ●MyLocationOverlay: Um Overlay usado pra mostrar a posição atual no map
  • 15.
    E esse talde MapActivity ●LocationManager: oClasse que provê acesso ao sistema de localização ●LocationListener: orecebe notificações do LocationManager quando a localização for mudada odeve implementar:  onLocationChanged():  onProviderEnabled():  onProviderDisabled():  onStatusChanged():
  • 16.
    E esse talde LocationManager? ●LocationManager: oClasse que provê acesso ao sistema de localização ●permite recuperar a posição atual a partir de um provider: oContext.LOCATION_SERVICE
  • 17.
    E esse talde LocationManager? ●locationManager.getProviders(true) oGPS_PROVIDER oNETWORK_PROVIDER