OnMapReady no llamando aunque la visualización del mapa sin ningún error
Estoy intentando mostrar un mapa simple usando Google Map API v2 en una aplicación de Android. Estoy siguiendo las instrucciones de la documentación de la API del mapa . Pero creo que el onMapReady
no está llamando por alguna razón. Estoy usando la versión 6587000
google-play-services_lib
. Mi teléfono tiene google-play-services_lib
verion 6587038
, creo.
El mapa de Google está funcionando con los controles iniciales. ¿Puede alguien ayudarme a corregir este error?
- Los mapas de Google de repente no funcionan
- Android GoogleMap v2 se recorta o no se muestra completamente
- MapView en ExpandableListView
- ¿Es posible especificar el <uses-permission> mediante programación?
- Cómo mostrar mapa en android con marcador
public class MapDisplay extends FragmentActivity implements OnMapReadyCallback { private GoogleMap mMap; private Location mCurrentLocation; private MarkerOptions mMarkerOptions ; private MapFragment mMapFragment; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.location_map); /** not needed mMapFragment = MapFragment.newInstance(); FragmentTransaction fragmentTransaction = getFragmentManag er().beginTransaction(); fragmentTransaction.add(R.id.map, mMapFragment); fragmentTransaction.commit();*/ /**corrected code*/ MapFragment mapFragment = (MapFragment) getFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); } @Override public void onMapReady(GoogleMap map) { toast("Map ready"); Log.d("--***** MAP ","::Map ready"); LatLng sydney = new LatLng(-33.867, 151.206); map.setMyLocationEnabled(true); map.moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, 13)); map.addMarker(new MarkerOptions() .title("Sydney") .snippet("The most populous city in Australia.") .position(sydney)); } private void toast(String text){ Toast toast = Toast.makeText(this, text, Toast.LENGTH_SHORT); toast.show(); } }
Archivo location_map.xml
<?xml version="1.0" encoding="utf-8"?> <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:name="com.google.android.gms.maps.MapFragment" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent"/>
- Definición de un CameraUpdate con LatLngBounds con diferentes valores de relleno
- Com.tools.fd.runtime.BootstrapApplication no se ejecutará a menos que actualice los servicios de Google Play
- Visualización de varias rutas utilizando la API de direcciones en Android
- INSTALL_FAILED_MISSING_SHARED_LIBRARY un proplem de emulador de android
- Alerta cuando la ubicación actual está cerca del marcador android map
- DeslizamientoDirector sobre GoogleMap
- Google maps api - Firma no válida
- ¿Consigue Google Maps para ampliar automáticamente la ubicación actual?
AFAIK, onMapReady()
es activado por una llamada a getMapAsync()
en tu MapFragment
, y no veo donde lo estás llamando.
Para llamar a OnMapReady(GoogleMap map)
, agregue lo siguiente a su onCreate(...)
:
MapFragment mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
Luego añade:
// This calls OnMapReady(..). (Asynchronously) mapFragment.getMapAsync(MapDisplay.this);
- Android: ¿Cómo establecer drawablePadding de forma programática?
- ¿Cuál es la alternativa para Canvas.getMatrix ()?