Baixe o app para aproveitar ainda mais
Prévia do material em texto
DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Versões API Maps: V1 (decreped) MapView V2 MapFragment Suporta visualizações 2D e 3D DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Chave de acesso dos mapas: https://console.developers.google.com/ DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Permissão: <uses-permission android:name=“android.permission.INTERNET” /> Acesso a Internet <uses-permission android:name=“android.permission.ACESS_NETWORK_STATE” /> Leitura do estado da rede <uses-permission android:name=“android.permission.WRITE_EXTERNAL_STORAGE” /> Permite Google Maps gravar informações no SD card DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Permissão: <uses-permission android:name=“android.permission.READ_EXTERNAL_STORAGE” /> Permite Google Maps ler informações no SD card <uses-permission android:name=“com.google.android.providers.gsf.permission.READ_GSERVICES” /> Permite acessar os serviços do Google DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Permissão: <uses-permission android:name=“android.permission.ACCESS_COARSE_LOCATION” /> Permite acessar o GPS por triangulação de antenas <uses-permission android:name=“android.permission.ACCESS_FINE_LOCATION” /> Permite acessar o GPS por hardware DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Google Maps: Representa o mapa do Google Através do método getMapAsync(listener) efetuamos a conexão com os serviços google. Resultado parametrizado para método onMapReady(map) da interface OnMapReadyCallback. DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Principais métodos Google Maps: moveCamera(position) animateCamera(position) DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Localização no Mapa: LatLng LatLng latLng = new LatLng(-21.546373, -44.239876) CameraUpdate e CameraUpdateFactory: CameraUpdate posicao = CameraUpdateFactory.newLatLngZoom(latLng, 15) DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Localização no Mapa: Atalhos CameraUpdateFactory: CameraUpdateFactoty.zoomIn() CameraUpdateFactoty.zoomOut() CameraUpdateFactoty.zoomTo(zoom) CameraUpdateFactoty.zoomBy(zoom) OBS: Os valores válidos para o zoom vão de 2 a 22 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Configurando tipo de mapa: setMapType da classe GoogleMap Tipos de Mapas: GoogleMap.MAP_TYPE_NOME: Modo de visualização mais simples do mapa. Nenhuma informação extra é exibida DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID GoogleMap.MAP_TYPE_NORMAL: Modo de visualização padrão dos mapas. Visualização de ruas, estradas e rios. GoogleMap.MAP_TYPE_SATELLITE: Modo de visualização com os dados do satélite. DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID GoogleMap.MAP_TYPE_HYBRID: Modo de visualização com os dados fotográficos do satélite , com os mapas das ruas. GoogleMap.MAP_TYPE_TERRAIN: Modo de visualização que exibe dados tipográficos. DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Eventos do Mapa: GoogleMap.setOnCameraChangeListener(OnCameraChangeListener) Implementar o método onCameraChange(position) da interface OnCameraChangeListener GoogleMap.setOnMapClickListener(OnMapClickListener) Implementar o método onMapClick(LatLng) da interface OnMapClickListener DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID Marcadores: GoogleMap.addMaker(MarkerOptions): Exemplo MakerOptions mo = new MakerOptions(); mo.position(latLng).title(“Marcador”).snippet(“Meu Exemplo”); Marker maker = map.addMaker(mo); DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 – AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="profoswaldo.com.aularecursosextras_1"> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 – AndroidManifest.xml <meta-data android:name="com.google.android.geo.API_KEY" android:value="AIzaSyA-mniieS2rQ7IUEshJIF87JDFUutgs1uM" /> <activity android:name=".MapsActivity” android:label="@string/title_activity_maps"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest> DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 – activity_maps.xml <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:map="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="profoswaldo.com.aularecursosextras_1.MapsActivity" /> DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 – MapsActivity.java package profoswaldo.com.aularecursosextras_1; import ... public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps); SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); } @Override public void onMapReady(GoogleMap googleMap) { mMap = googleMap; LatLng rioBarra = new LatLng(-22.999191888310502, -43.36054447708125); mMap.addMarker(new MarkerOptions().position(rioBarra).title("Rio de Janeiro - Barrada Tijuca")); mMap.moveCamera(CameraUpdateFactory.newLatLng(rioBarra)); } } DESENVOLVIMENTO DE APLICATIVOS ANDROID SERVIÇOS GOOGLE EM APLICAÇÕES ANDROID EXEMPLO 1 – MapsActivity.java @Override public void onMapReady(GoogleMap googleMap) { mMap = googleMap; LatLng rioBarra = new LatLng(-22.999191888310502, -43.36054447708125); mMap.addMarker(new MarkerOptions().position(rioBarra).title("Rio de Janeiro - Barra da Tijuca")); mMap.moveCamera(CameraUpdateFactory.newLatLng(rioBarra)); } }
Compartilhar