$30 off During Our Annual Pro Sale. View Details »

Customização de Mapas no Android

Customização de Mapas no Android

Utilizando Google Maps API + Google Play Services, é demonstrado um pouco de como é feito a estilização de mapas para Android por aplicativos como UBER, 99Taxis e FlightRadar

Wellington Mitrut

February 14, 2017
Tweet

More Decks by Wellington Mitrut

Other Decks in Technology

Transcript

  1. Wellington Mitrut - Ex-Baixista do Dream Theater, - Ex-Batman -

    Ex-Paquita - Flash Reverso - Freelance @wmitrut
  2. A cartografia é a ciência da representação gráfica da superfície

    terrestre, tendo como produto final o mapa. Ou seja, é a ciência que trata da concepção, produção, difusão, utilização e estudo dos mapas.
  3. É possível personalizar mapas desde a versão 9.6.0 do Google

    Play Services (set/2016) Segunda-feira saiu a 10.2.0
  4. 2 - Implemente a View public class MapsActivity extends FragmentActivity

    implements OnMapReadyCallback { private GoogleMap mMap; private static final String TAG = MapsActivity.class.getSimpleName(); @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); } MapsActivity.java
  5. 2 - Implemente a View <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:map="http://schemas.android.com/apk/res-auto" android:layout_width=

    "match_parent" android:layout_height= "match_parent" android:id="@+id/map" tools:context="com.custommapsgdgcvel.custommapsgdgcvel.MapsActivity" android:name="com.google.android.gms.maps.SupportMapFragment" /> activity_maps.xml
  6. 3 - Faça a Chamada do estilo e seu tratamento

    @Override public void onMapReady(GoogleMap googleMap) { try { boolean success = googleMap.setMapStyle( MapStyleOptions.loadRawResourceStyle( this, R.raw.cascavel_style)); if (!success) { Log.e(TAG, "Falhou ao aplicar estilo."); } } catch (Resources.NotFoundException e) { Log.e(TAG, "Estilo não encontrado. Error: ", e); } mMap = googleMap; LatLng cascavel = new LatLng(-24.952327, -53.461767); mMap.addMarker(new MarkerOptions().position(cascavel).title("Cascavel")); mMap.moveCamera(CameraUpdateFactory.newLatLng(cascavel)); } } MapsActivity.java