0

Guys i'm trying to add the google map to android application by eclipse I just created the new project and followed the series tutorials here Google Maps API v2

when I run the app it crashed and this is the logcat

10-01 20:00:19.911: E/AndroidRuntime(24614): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:277) 10-01 20:00:19.911: E/AndroidRuntime(24614): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 10-01 20:00:19.911: E/AndroidRuntime(24614): ... 23 more 10-01 20:00:19.911: E/AndroidRuntime(24614): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.maps.MapFragment" on path: /data/app/com.example.maptest-2.apk 10-01 20:00:19.911: E/AndroidRuntime(24614): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64) 10-01 20:00:19.911: E/AndroidRuntime(24614): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 10-01 20:00:19.911: E/AndroidRuntime(24614): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 10-01 20:00:19.911: E/AndroidRuntime(24614): at android.support.v4.app.Fragment.instantiate(Fragment.java:399) 10-01 20:00:19.911: E/AndroidRuntime(24614): ... 26 more 10-01 20:01:22.546: E/AndroidRuntime(25503): FATAL EXCEPTION: main 10-01 20:01:22.546: E/AndroidRuntime(25503): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.maptest/com.example.maptest.MainActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class fragment 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2308) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2362) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread.access$700(ActivityThread.java:168) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1329) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.os.Handler.dispatchMessage(Handler.java:99) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.os.Looper.loop(Looper.java:137) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread.main(ActivityThread.java:5493) 10-01 20:01:22.546: E/AndroidRuntime(25503): at java.lang.reflect.Method.invokeNative(Native Method) 10-01 20:01:22.546: E/AndroidRuntime(25503): at java.lang.reflect.Method.invoke(Method.java:525) 10-01 20:01:22.546: E/AndroidRuntime(25503): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1209) 10-01 20:01:22.546: E/AndroidRuntime(25503): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1025) 10-01 20:01:22.546: E/AndroidRuntime(25503): at dalvik.system.NativeStart.main(Native Method) 10-01 20:01:22.546: E/AndroidRuntime(25503): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class fragment 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:719) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.view.LayoutInflater.inflate(LayoutInflater.java:470) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.view.LayoutInflater.inflate(LayoutInflater.java:398) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.view.LayoutInflater.inflate(LayoutInflater.java:354) 10-01 20:01:22.546: E/AndroidRuntime(25503): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:361) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.Activity.setContentView(Activity.java:1956) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v7.app.ActionBarActivity.superSetContentView(ActionBarActivity.java:208) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v7.app.ActionBarActivityDelegateICS.setContentView(ActionBarActivityDelegateICS.java:111) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:76) 10-01 20:01:22.546: E/AndroidRuntime(25503): at com.example.maptest.MainActivity.onCreate(MainActivity.java:13) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.Activity.performCreate(Activity.java:5372) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1104) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2270) 10-01 20:01:22.546: E/AndroidRuntime(25503): ... 11 more 10-01 20:01:22.546: E/AndroidRuntime(25503): Caused by: android.support.v4.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 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v4.app.Fragment.instantiate(Fragment.java:409) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v4.app.Fragment.instantiate(Fragment.java:377) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:277) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 10-01 20:01:22.546: E/AndroidRuntime(25503): ... 23 more 10-01 20:01:22.546: E/AndroidRuntime(25503): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.maps.MapFragment" on path: /data/app/com.example.maptest-1.apk 10-01 20:01:22.546: E/AndroidRuntime(25503): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64) 10-01 20:01:22.546: E/AndroidRuntime(25503): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 10-01 20:01:22.546: E/AndroidRuntime(25503): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 10-01 20:01:22.546: E/AndroidRuntime(25503): at android.support.v4.app.Fragment.instantiate(Fragment.java:399) 10-01 20:01:22.546: E/AndroidRuntime(25503): ... 26 more 10-01 20:02:52.021: E/AndroidRuntime(25864): FATAL EXCEPTION: main 10-01 20:02:52.021: E/AndroidRuntime(25864): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.maptest/com.example.maptest.MainActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class fragment 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2308) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2362) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread.access$700(ActivityThread.java:168) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1329) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.os.Handler.dispatchMessage(Handler.java:99) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.os.Looper.loop(Looper.java:137) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread.main(ActivityThread.java:5493) 10-01 20:02:52.021: E/AndroidRuntime(25864): at java.lang.reflect.Method.invokeNative(Native Method) 10-01 20:02:52.021: E/AndroidRuntime(25864): at java.lang.reflect.Method.invoke(Method.java:525) 10-01 20:02:52.021: E/AndroidRuntime(25864): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1209) 10-01 20:02:52.021: E/AndroidRuntime(25864): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1025) 10-01 20:02:52.021: E/AndroidRuntime(25864): at dalvik.system.NativeStart.main(Native Method) 10-01 20:02:52.021: E/AndroidRuntime(25864): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class fragment 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:719) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.view.LayoutInflater.inflate(LayoutInflater.java:470) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.view.LayoutInflater.inflate(LayoutInflater.java:398) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.view.LayoutInflater.inflate(LayoutInflater.java:354) 10-01 20:02:52.021: E/AndroidRuntime(25864): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:361) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.Activity.setContentView(Activity.java:1956) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v7.app.ActionBarActivity.superSetContentView(ActionBarActivity.java:208) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v7.app.ActionBarActivityDelegateICS.setContentView(ActionBarActivityDelegateICS.java:111) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:76) 10-01 20:02:52.021: E/AndroidRuntime(25864): at com.example.maptest.MainActivity.onCreate(MainActivity.java:13) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.Activity.performCreate(Activity.java:5372) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1104) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2270) 10-01 20:02:52.021: E/AndroidRuntime(25864): ... 11 more 10-01 20:02:52.021: E/AndroidRuntime(25864): Caused by: android.support.v4.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 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v4.app.Fragment.instantiate(Fragment.java:409) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v4.app.Fragment.instantiate(Fragment.java:377) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:277) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 10-01 20:02:52.021: E/AndroidRuntime(25864): ... 23 more 10-01 20:02:52.021: E/AndroidRuntime(25864): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.maps.MapFragment" on path: /data/app/com.example.maptest-2.apk 10-01 20:02:52.021: E/AndroidRuntime(25864): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64) 10-01 20:02:52.021: E/AndroidRuntime(25864): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 10-01 20:02:52.021: E/AndroidRuntime(25864): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 10-01 20:02:52.021: E/AndroidRuntime(25864): at android.support.v4.app.Fragment.instantiate(Fragment.java:399) 10-01 20:02:52.021: E/AndroidRuntime(25864): ... 26 more

  • `Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.maps.MapFragment" on path: /data/app/com.example.maptest-2.apk` -- make sure you set up the Play Services SDK library project properly in your app. For example, if you manually modified the build path of your project, you did it wrong. – CommonsWare Oct 01 '14 at 17:17
  • Hello look there if this helps you [a link] http://stackoverflow.com/questions/16572020/error-java-lang-classnotfoundexception-com-google-android-gms-maps-mapfragment – Angel Angel Oct 01 '14 at 17:21

2 Answers2

1

Make sure you have declared the fragment in your layout. Like following.

<fragment
          android:id="@+id/map"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:name="com.google.android.gms.maps.MapFragment"/>

Also that you have added Google Play services library in your project.

Follow these instruction step by step : https://developers.google.com/maps/documentation/android/start

0

I had the same problem and I did the mistake to only add one of the 2 following tags. Note that you are also missing one of these two

        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="<YOUR VALUE>"/>
        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

The actual error is really misleading, as you might be thinking of some API level UI issue.

Adnan
  • 1,440
  • 2
  • 18
  • 38
  • Please don't post [identical answers](//stackoverflow.com/a/36649673) to multiple questions. Post one good answer, then vote/flag to close the other questions as duplicates. If the question is not a duplicate, *tailor your answers to the question.* – Paul Roub Apr 15 '16 at 14:23