10-22 14:57:11.044  21166-21166/? I/art﹕ Late-enabling -Xcheck:jni
10-22 14:57:11.334  21166-21166/? D/AndroidRuntime﹕ Shutting down VM
10-22 14:57:11.344  21166-21166/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.example.young.maptest, PID: 21166
    java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/content/LocalBroadcastManager;
            at com.amap.api.mapcore.AMapDelegateImpGLSurfaceView.<init>(AMapDelegateImpGLSurfaceView.java:489)
            at com.amap.api.mapcore.AMapDelegateImpGLSurfaceView.<init>(AMapDelegateImpGLSurfaceView.java:318)
            at com.amap.api.mapcore.ak.a(MapFragmentDelegateImp.java:123)
            at com.amap.api.maps.MapView.onCreate(MapView.java:131)
            at com.example.young.maptest.MainActivity.onCreate(MainActivity.java:23)
            at android.app.Activity.performCreate(Activity.java:6033)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2362)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2471)
            at android.app.ActivityThread.access$800(ActivityThread.java:163)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1357)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:141)
            at android.app.ActivityThread.main(ActivityThread.java:5451)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.content.LocalBroadcastManager" on path: DexPathList[[zip file "/data/app/com.example.young.maptest-2/base.apk"],nativeLibraryDirectories=[/data/app/com.example.young.maptest-2/lib/arm64, /vendor/lib64, /system/lib64]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
            at com.amap.api.mapcore.AMapDelegateImpGLSurfaceView.<init>(AMapDelegateImpGLSurfaceView.java:489)
            at com.amap.api.mapcore.AMapDelegateImpGLSurfaceView.<init>(AMapDelegateImpGLSurfaceView.java:318)
            at com.amap.api.mapcore.ak.a(MapFragmentDelegateImp.java:123)
            at com.amap.api.maps.MapView.onCreate(MapView.java:131)
            at com.example.young.maptest.MainActivity.onCreate(MainActivity.java:23)
            at android.app.Activity.performCreate(Activity.java:6033)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2362)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2471)
            at android.app.ActivityThread.access$800(ActivityThread.java:163)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1357)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:141)
            at android.app.ActivityThread.main(ActivityThread.java:5451)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
    Suppressed: java.lang.ClassNotFoundException: android.support.v4.content.LocalBroadcastManager
            at java.lang.Class.classForName(Native Method)
            at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
            at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
            ... 19 more
     Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
10-22 14:57:15.564  21166-21166/? I/Process﹕ Sending signal. PID: 21166 SIG: 9

解决方案 »

  1.   

    <FrameLayout 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" >
        <com.amap.api.maps.MapView
            android:id="@+id/map"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></com.amap.api.maps.MapView>
        <ToggleButton
            android:id="@+id/tb"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="top|right"
            android:textOff="普通地图"
            android:textOn="卫星地图"
            android:checked="false"/></FrameLayout>
      

  2.   

    package com.example.young.maptest;import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.CompoundButton;
    import android.widget.ToggleButton;import com.amap.api.maps.AMap;
    import com.amap.api.maps.MapView;public class MainActivity extends Activity {
        private MapView mapView;
        private AMap aMap;    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            mapView = (MapView) findViewById(R.id.map);
            // 必须回调MapView的onCreate()方法
            mapView.onCreate(savedInstanceState);
            init();
            ToggleButton tb = (ToggleButton) findViewById(R.id.tb);
            tb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                    if (isChecked) {
                        // 设置使用卫星地图
                        aMap.setMapType(AMap.MAP_TYPE_SATELLITE);
                    } else {
                        // 设置使用普通地图
                        aMap.setMapType(AMap.MAP_TYPE_NORMAL);
                    }
                }
            });
        }    private void init() {
            if (aMap == null) {
                aMap = mapView.getMap();
            }
        }
        @Override
        protected void onResume() {
            super.onResume();
            // 必须回调MapView的onResume()方法
            mapView.onResume();
        }
        @Override
        protected void onPause() {
            super.onPause();
            // 必须回调MapView的onPause()方法
            mapView.onPause();
        }
        @Override
        protected void onSaveInstanceState(Bundle outState) {
            super.onSaveInstanceState(outState);
            // 必须回调MapView的onSaveInstanceState()方法
            mapView.onSaveInstanceState(outState);
        }
        @Override
        protected void onDestroy() {
            super.onDestroy();
            // 必须回调MapView的onDestroy()方法
            mapView.onDestroy();
        }
      

  3.   

    mapView.onCreate(savedInstanceState); 报错的是这一行
      

  4.   

    说一下我的经验,这个问题真是整死我了,哈哈,开发环境 AS2.1, 加入的Map总是直接异常退出,后来把工程Clean一下就行了。真是莫名其妙。
      

  5.   

    我原来遇到过这样的问题,第一你先试着把
            //地图的显示
            mMapView = (MapView) findViewById(R.id.map);//找到地图控件
            mMapView.onCreate(savedInstanceState);// 此方法必须重写
            aMap = mMapView.getMap();//得到一个map对象
    写到一起看看行不行,
      

  6.   

    不行就重新下载jar包,直接用demo里lib的