繁体   English   中英

Android谷歌地图“ NoClassDefFound”

[英]Android google maps “NoClassDefFound”

我已经将<uses-library android:name="com.google.android.maps" />放在application标签中。

当我试图进行这项活动时,我崩溃了。

这是我的java文件:

**

import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.os.Bundle;

public class MyMap extends MapActivity {   

    @Override  
    public void onCreate(Bundle savedInstanceState) { 

        super.onCreate(savedInstanceState);  
        setContentView(R.layout.mapactivity);  
    }  

    @Override  
    protected boolean isRouteDisplayed() {  
        return false;  
    }  
}

这是我的xml文件:(在my_api_key上,我有自己从Google那里获得的密钥)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <com.google.android.maps.MapView
    android:id="@+id/mapview1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:enabled="true"
    android:clickable="true"
    android:apiKey="my_api_key" />


</RelativeLayout>

当我在Eclipse中进入编辑器时,我会看到: http : //i.stack.imgur.com/eUUHb.jpg

谢谢。

完整的堆栈跟踪:03-08 07:06:10.554:E / AndroidRuntime(18227):java.lang.NoClassDefFoundError:Fproj.dnlgby.MyMap 03-08 07:06:10.554:E / AndroidRuntime(18227):在Fproj .dnlgby.MenuActivity.onClick(MenuActivity.java:60)03-08 07:06:10.554:E / AndroidRuntime(18227):位于android.view.View.performClick(View.java:2496)03-08 07:06 :10.554:E / AndroidRuntime(18227):位于android.view.View $ PerformClick.run(View.java:9120)03-08 07:06:10.554:E / AndroidRuntime(18227):位于android.os.Handler。 handleCallback(Handler.java:587)03-08 07:06:10.554:E / AndroidRuntime(18227):at android.os.Handler.dispatchMessage(Handler.java:92)03-08 07:06:10.554:E / AndroidRuntime(18227):位于android.os.Looper.loop(Looper.java:130)03-08 07:06:10.554:E / AndroidRuntime(18227):位于android.app.ActivityThread.main(ActivityThread.java:3859 )03-08 07:06:10.554:E / AndroidRuntime(18227):位于java.lang.reflect.Method.invokeNative(本地方法)03-08 07:06:10.554:E / AndroidRuntime(18227):位于Java。 lang.reflect.Method.invoke(Method.ja va:507)03-08 07:06:10.554:E / AndroidRuntime(18227):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:840)03-08 07:06:10.554: E / AndroidRuntime(18227):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:598)03-08 07:06:10.554:E / AndroidRuntime(18227):在dalvik.system.NativeStart.main (本机方法)03-08 07:06:10.554:E / AndroidRuntime(18227):原因:java.lang.IllegalAccessError:预验证类中的类ref被解析为意外实现03-08 07:06:10.554:E / AndroidRuntime(18227):在dalvik.system.DexFile.defineClass(本机方法)03-08 07:06:10.554:E / AndroidRuntime(18227):在dalvik.system.DexFile.loadClassBinaryName(DexFile.java:207)03 -08 07:06:10.554:E / AndroidRuntime(18227):在dalvik.system.PathClassLoader.findClass(PathClassLoader.java:200)03-08 07:06:10.554:E / AndroidRuntime(18227):在java.lang .ClassLoader.loadClass(ClassLoader.java:551)03-08 07:06:10.554:E / AndroidRuntime(18227):at java.lang.ClassLoader.loadClass(Clas) sLoader.java:511)03-08 07:06:10.554:E / AndroidRuntime(18227):...还有12个

我通过在导入Google Play服务库时选中“将项目复制到工作区”来解决此错误。 此处提供更多信息: http : //developer.android.com/google/play-services/setup.html

这是在设备还是仿真器上运行? 如果在模拟器上,该模拟器是否设置为提供Google API?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM