Setting Google Maps API v2 on Android, error inflating a class fragment

So, I followed the Google Maps API v2 for Android, trying to get the main map on the screen. After completing all the steps, I get a fragment of the class "Destruction of errors." Other people have faced the same problem, but none of the solutions seem to work. Exact error: android.view.InflateException: Binary XML file line #10: Error inflating class fragment

.java

 import android.os.Bundle; import android.view.Menu; import android.support.v4.app.FragmentActivity; public class GoogleMaps extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_google_maps); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.google_maps, menu); return true; } } 

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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".GoogleMaps" > <fragment android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment" android:name="com.testing.svma.MainActivity"/> </RelativeLayout> 

I think I’ve set up Google Play services correctly, and will ask them to download when the page is transferred for the first time. Here are my project.properties:

 # Project target. target=android-17 android.library=false android.library.reference.1=../../../android-sdks/extras/google/google_play_services/libproject/google-play-services_lib 

log cat:

 ... 03-06 21:12:44.751: I/System.out(9122): Debugger has connected 03-06 21:12:44.751: I/System.out(9122): waiting for debugger to settle... 03-06 21:12:46.166: I/System.out(9122): debugger has settled (1487) 03-06 21:12:50.634: D/dalvikvm(9122): DexOpt: couldn't find field Landroid/content/res/Configuration;.smallestScreenWidthDp 03-06 21:12:50.634: W/dalvikvm(9122): VFY: unable to resolve instance field 23 03-06 21:12:50.634: D/dalvikvm(9122): VFY: replacing opcode 0x52 at 0x0012 03-06 21:12:50.634: D/dalvikvm(9122): VFY: dead code 0x0014-0018 in Lcom/google/android/gms/common/GooglePlayServicesUtil;.b (Landroid/content/res/Resources;)Z 03-06 21:12:51.126: W/dalvikvm(9122): Unable to resolve superclass of Lmaps/p/s; (427) 03-06 21:12:51.126: W/dalvikvm(9122): Link of class 'Lmaps/p/s;' failed 03-06 21:12:51.126: W/dalvikvm(9122): Unable to resolve superclass of Lmaps/y/bo; (3820) 03-06 21:12:51.126: W/dalvikvm(9122): Link of class 'Lmaps/y/bo;' failed 03-06 21:12:51.126: W/dalvikvm(9122): Unable to resolve superclass of Lmaps/i/k; (4208) 03-06 21:12:51.126: W/dalvikvm(9122): Link of class 'Lmaps/i/k;' failed 03-06 21:12:51.126: E/dalvikvm(9122): Could not find class 'maps.i.k', referenced from method maps.z.ag.a 03-06 21:12:51.126: W/dalvikvm(9122): VFY: unable to resolve new-instance 3540 (Lmaps/i/k;) in Lmaps/z/ag; 03-06 21:12:51.126: D/dalvikvm(9122): VFY: replacing opcode 0x22 at 0x006d 03-06 21:12:51.149: D/dalvikvm(9122): VFY: dead code 0x006f-007f in Lmaps/z/ag;.a (Landroid/view/LayoutInflater;Lcom/google/android/gms/maps/GoogleMapOptions;ZLjava/lang/String;)Lmaps/z/ag; 

I tried solutions from these threads with no luck:

Error inflating a class fragment

Google Maps V2 - Error inflating a fragment of a class

I also just followed this guide and got the same error:

https://www.youtube.com/watch?v=OZRgiwGfvSQ

+4
source share
5 answers

This problem usually occurs because your project lacks the android-support library. This is because api does not exist in older versions of the fragment, so you need to add this library to add fragment support to the older version of Android.

To do this, right-click on your project, and then:

enter image description here

Alternatively, you can go to this blog post that I wrote about implementing Google Maps in your application:

Google Maps V2 API

+1
source

I had the same problem and I tried to use every opportunity like 2 days, but I changed my XML layout file in this way and in java code I used mapfragment support

also import android support library from explorer package

  <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <fragment android:name="com.google.android.gms.maps.SupportMapFragment" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> 
+1
source

I fixed this problem by adding these lines to the manifest.

 <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> 
+1
source

Follow all steps in this link.

You missed the link to Google maps. Add this to your code.

 public class GoogleMaps extends FragmentActivity { private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_google_maps); mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) .getMap(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.google_maps, menu); return true; } } 

In addition to adding a card key, add a game service to the project

0
source

I had the same error and managed to solve it with a few attempts from the stackoverflow difference answers:

Not sure if this is a question that helps solve the problem, but I just listed everything I did:

  • Right-click on the project -> Properties -> Android -> Change the Build Target project to Android 4.1.2 (an open source Android project) -> In the "Library" section, delete google-play-service-lib and add it back → Click "Apply "→ follow" OK "
  • Right click Project -> Android Tools -> Fix Project Properties ( Emil Adz )
  • Link to Google Maps in the classroom ( Basavaraj Hampali )

     private GoogleMap mMap; mMap = ((SupportMapFragment) this.getSupportFragmentManager().findFragmentById(R.id.map)).getMap(); if (mMap== null) { Toast.makeText(this,"Map not Available", Toast.LENGTH_LONG).show(); } 
  • extends android.support.v4.app.FragmentActivity instead of "FragmentActivity" ( ayush1794 )

     extends android.support.v4.app.FragmentActivity 

Hope this helps :)

0
source

All Articles