Implementación de Google Map APIv2, línea de archivo XML binario # 6: Error al inflar fragmento de clase

android.view.InflateException: Binary XML file line #6: Error inflating class fragment 

Estoy tratando de implementar Google Map apiv2 en fragmentos después de varios tutoriales, me encontré con el error de inflar fragmento de clase, entonces me encontré con varios problemas similares en stackoverflow, intentó casi todo, pero el problema persiste. Soy nuevo en android, cualquier tipo de consejos son bienvenidos, quiero aprender android desarrollo rápido, pero estoy atrapado. gracias por adelantado.

Edit: la aplicación se cierra inesperadamente cuando voy desde el fragmento 3 al fragmento 2 y el fragmento 1 se carga en segundo plano. ¿Ideas para resolver estos problemas?

Mi androide manifiesto:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.hspot2" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="11" android:targetSdkVersion="18" /> <permission android:name="com.example.hspot2.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- Required OpenGL ES 2.0. for Maps V2 --> <uses-feature android:glEsVersion="0x00020000" android:required="true" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.hspot2.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyDOeSK3RC57lSdERhR0tnadCSA"/> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> </application> </manifest> 

Mi actividad principal en la que estoy implementando las pestañas de desplazamiento con fragmentos:

 import java.util.Locale; import android.app.ActionBar; import android.app.FragmentTransaction; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.app.NavUtils; import android.support.v4.view.ViewPager; import android.view.Gravity; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; public class MainActivity extends FragmentActivity implements ActionBar.TabListener { SectionsPagerAdapter mSectionsPagerAdapter; ViewPager mViewPager; ActionBar actionBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mViewPager = (ViewPager) findViewById(R.id.pager); actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); mViewPager.setAdapter(mSectionsPagerAdapter); for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) { actionBar.addTab(actionBar.newTab() .setText(mSectionsPagerAdapter.getPageTitle(i)) .setTabListener(this)); } // When swiping between different sections, select the corresponding // tab. We can also use ActionBar.Tab#select() to do this if we have // a reference to the Tab. mViewPager .setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { @Override public void onPageSelected(int position) { actionBar.setSelectedNavigationItem(position); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { // When the given tab is selected, switch to the corresponding page in // the ViewPager. mViewPager.setCurrentItem(tab.getPosition()); } @Override public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { } @Override public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { } /** * A {@link FragmentPagerAdapter} that returns a fragment corresponding to * one of the sections/tabs/pages. */ public class SectionsPagerAdapter extends FragmentStatePagerAdapter { public SectionsPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int i) { Fragment fragment = null; if(i==0){ fragment = new FragmentA(); } if(i==1){ fragment = new FragmentB(); } if(i==2){ fragment = new FragmentC(); } return fragment; } @Override public int getCount() { return 3; } @Override public CharSequence getPageTitle(int position) { Locale l = Locale.getDefault(); switch (position) { case 0: return getString(R.string.title_section1).toUpperCase(l); case 1: return getString(R.string.title_section2).toUpperCase(l); case 2: return getString(R.string.title_section3).toUpperCase(l); } return null; } } } 

Mi fragment_a.xml donde estoy implementando el diseño del mapa:

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFCC00" > <fragment android:id="@+id/map1" android:layout_width="match_parent" android:layout_height="match_parent" class = "com.google.android.gms.maps.SupportMapFragment" /> </RelativeLayout> 

FragmentA.java file:

 import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.google.android.gms.common.GooglePlayServicesNotAvailableException; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.MapFragment; import com.google.android.gms.maps.MapView; import com.google.android.gms.maps.MapsInitializer; import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.model.BitmapDescriptorFactory; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.Marker; import com.google.android.gms.maps.model.MarkerOptions; public class FragmentA extends Fragment{ static final LatLng HAMBURG = new LatLng(53.558, 9.927); GoogleMap map; MapView mapView; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment_a, container, false); map = ((SupportMapFragment) getFragmentManager().findFragmentById(R.id.map1)).getMap(); return v; } } 

Trate de seguir la solución, que funciona como un encanto.

1) Vaya al archivo XML y escriba lo siguiente:

  <fragment android:id="@+id/citymap" android:layout_width="wrap_content" android:layout_height="wrap_content" class="com.google.android.gms.maps.SupportMapFragment"/> 

2) Ahora vaya a su Actividad y realice los cambios siguientes:

=> Vaya al método apropiado y copie debajo del código,

 FragmentManager myFragmentManager = getChildFragmentManager(); SupportMapFragment mySupportMapFragment =(SupportMapFragment)myFragmentManager.findFragmentById(R.id.citymap); GoogleMap googlemap=mySupportMapFragment.getMap(); 
  • "Error al inflar fragmento de clase" con google map
  • Problema con la eliminación de la polilínea google map v2 android
  • ¿Cómo detectar mi posición ya no se muestra en el mapa (después de la navegación)?
  • API de Google Maps para Android v2: Ampliar la ubicación y el marcador actuales
  • Cómo obtener el evento de clic del texto del marcador
  • Android maps v2 se vuelve de baja calidad cuando el área del mapa se mueve automáticamente
  • Android - Dragging marcador sin tener que mantener en el mapa api v2
  • Agrupar los marcadores de mapa en el zoom hacia afuera y el desenclavamiento en el zoom
  • Google Maps Android API v2: Error al cargar mapa. No se pudo contactar con los servidores de Google
  • Cómo obtener la ubicación de Google Map después de soltar Pin sobre ella
  • Encuentra la posición de los marcadores en google map mientras mueve las posiciones de la cámara
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.