Linea di file XML binaria # 8: errore di gonfiaggio del frammento di class, Google Maps

In questa applicazione, sto cercando di aggiungere una mappa funzionale google v2. Ho esaminato la maggior parte dei tutorial per la creazione di un'attività, ottenendo una chiave per le mappe e creando il file xml per cercare di vedere se ho perso un passo (ho passato attraverso di essi come 4 volte), e non mi sembra di aver perso qualche passo.

Ecco il sito che ho usato:

  • Android - Broadcast Receiver non viene licenziato
  • Visualizza Pager + ImageView + Pinch Zoom + Rotazione
  • Quale sensore per il telefono rotante android?
  • È anche enum personalizzabile anche Serializable?
  • "Errore: imansible trovare variabile di simbolo xml" durante la ricerca di google analytics
  • Modifica dei dati di SimpleCursorAdapter
  • Quando eseguo l'applicazione sul mio telefono (dal momento che i servizi di riproduzione di Google non funzionano sull'emulatore), mi danno questi due errori:

    02-11 22:10:54.690: E/AndroidRuntime(4526): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.myfirstapp/com.example.myfirstapp.ShowActivity}: android.view.InflateException: Binary XML file line #8: Error inflating class fragment 02-11 22:10:54.690: E/AndroidRuntime(4526): Caused by: android.app.Fragment$InstantiationException: Unable to instantiate fragment com.google.android.gms.maps.MapFragment: make sure class name exists, is public, and has an empty constructor that is public 

    Ecco la mia attività:

     package com.example.myfirstapp; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.Menu; import com.google.android.maps.*; import com.google.android.gms.maps.MapFragment; public class ShowActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_map, menu); return true; } //@Override //protected boolean isRouteDisplayed() { // TODO Auto-generated method stub //return false; //} } 

    Spiacenti per la formattazione, ma qui è il mio file xml:

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".ShowActivity" > <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.MapFragment" /> </RelativeLayout> 

    Ho importto i servizi di Google API e Google Play, in modo che tutte le importzioni stiano lavorando, e mi chiedo perché il secondo errore detto che MapFragment fosse vuoto. Codice del file manifesto:

     <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myfirstapp" android:versionCode="1" android:versionName="1.0" > <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.SUBSCRIBED_FEEDS_READ" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="com.example.myfirstapp.permission.MAPS_RECEIVE" /> <permission android:name="com.example.myfirstapp.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <uses-feature android:glEsVersion="0x00020000" android:required="true" /> <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="15" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.myfirstapp.MainActivity" android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <meta-data android:name="android.app.default_searchable" android:value=".SearchResultsActivity" /> </activity> <activity android:name="com.example.myfirstapp.SearchResultsActivity" android:label="@string/title_activity_search_results" android:launchMode="singleTop" > <intent-filter> <action android:name="android.intent.action.SEARCH" /> </intent-filter> <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" /> </activity> <activity android:name="com.example.myfirstapp.AddContacts" android:label="@string/title_activity_add_contacts" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.ContactActivity" android:label="@string/title_activity_contact" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.DisplayInfo" android:label="@string/title_activity_display_info" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <provider android:name="com.example.myfirstapp.SomeProvider" android:authorities="com.example.myfirstapp.SomeProvider" > </provider> <activity android:name="com.example.myfirstapp.EditContacts" android:label="@string/title_activity_edit_contacts" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.DeleteContact" android:label="@string/title_activity_delete_contact" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.FlightInfo" android:label="@string/title_activity_flight_info" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.EventInfo" android:label="@string/title_activity_event_info" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.myfirstapp.ContactsActivity" android:label="@string/title_activity_contacts" > </activity> <activity android:name="com.example.myfirstapp.ShowActivity" android:label="@string/title_activity_map" > </activity> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="removed" /> <uses-library android:name="com.google.android.maps" /> </application> </manifest> 

  • Android gioco due giocatori da giocare in internet
  • NestedScrollview non parte da cima
  • La ricerca di ricerca non funziona dal momento che la compat app
  • Nessun constructor vuoto quando crea un servizio
  • Il metodo FloatMath.sqrt () non è stato trovato
  • come trovare il path di archiviazione dell'applicazione di apk dell'applicazione android
  • 4 Solutions collect form web for “Linea di file XML binaria # 8: errore di gonfiaggio del frammento di class, Google Maps”

    Provare sotto il codice:

     public class ShowActivity extends android.support.v4.app.FragmentActivity { private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); setUpMapIfNeeded(); } @Override protected void onResume() { super.onResume(); setUpMapIfNeeded(); } private void setUpMapIfNeeded() { // Do a null check to confirm that we have not already instantiated the map. if (mMap == null) { // Try to obtain the map from the SupportMapFragment. mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) .getMap(); // Check if we were successful in obtaining the map. if (mMap != null) { setUpMap(); } } } } 

    Codice file XML:

     <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment"/> 

    Codice del file manifesto:

      <permission android:name="com.example.myfirstapp.permission.MAPS_RECEIVE" android:protectionLevel="signature"/> <uses-permission android:name="com.example.myfirstapp.permission.MAPS_RECEIVE"/> <!-- Copied from Google Maps Library/AndroidManifest.xml. --> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> <!-- External storage for caching. --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-feature android:glEsVersion="0x00020000" android:required="true"/> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="removed" /> </application> 

    Sto provando a distribuire Google Play Services V2 (per le funzionalità Google Map) in Android 2.3.4. (Livello API 10), ho avuto lo stesso problema. Ecco come ho risolto:

    1. google-play-services_lib whereva essere inclusa come una libreria. In Eclipse, è ansible procedere come segue:

      • Utilizza l'SDK Manager di Android per scaricare la libreria.
      • Crea un nuovo progetto Android dal codice esistente in cui si punta a google-play-services_lib nella cartella utilizzata per installare l'SDK. Ho usato un livello in su (libproject).
      • In Progetto -> Proprietà -> Android bandiera questo progetto come è la libreria .
      • Nel tuo progetto apri anche Project -> Properties -> Android e fai clic su Aggiungi nella sezione libreria. Seleziona il google-play-services_lib. Apparirà come com_google_android_gms.

      Questo è importnte: assicurati che l'objective di creazione del progetto per la libreria sia lo stesso usato per l'applicazione.

    2. Poiché la versione API è inferiore a 11, ApplicationMapFragment viene utilizzato invece di MapFragment.

    Spero che questo ti aiuti. Mi ha portto alless tre ore solide per lavorare questo fuori.

    Ho seguito i passaggi seguenti:

    Passaggio 1: includere la row sottostante nel manifesto assicurati di aggiungere all'interno del tag dell'applicazione

      <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyA0YQoByyHKGbB2R3pSIerQCEiGlwieRas" /> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 

    Ex::

      <application android:name="taxialways.user.MyApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="taxialways.user.Register" android:label="@string/title_activity_register" android:noHistory="true" android:screenOrientation="portrait" > </activity> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyA0YQoByyHKGbB2R3pSIerQCEiGlwieRas" /> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> </application> 

    Fase 2: Assicurati che la tua attività estendi FragmentActivity


    Passo 3: Utilizza l'elemento mapFragment come sotto nel xml

      <fragment android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="fill_parent" android:layout_height="match_parent" android:layout_alignParentBottom="true" android:layout_below="@+id/lineartab" /> 

    Aggiungere le seguenti righe nel tuo manifesto

     <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.