Google Maps Android API提供NoClassDefFoundError

时间:2010-09-25 02:04:26

标签: android google-maps

我的应用程序只包含一个带叠加层的地图,但是当我创建我的MapView时,我的应用程序崩溃了一个NoClassDefFoundError。我正在使用与我的目标匹配的Google API AVD,但显然我仍然做错了。有什么想法吗?

编辑:如果它有帮助,我的NoClassDefFoundError抱怨[generic]。我可以理解为什么[generic]没有课程定义,但我不确定它的来源。

此外,稍后的ClassNotFoundException会抱怨com.google.android.maps.MapView in loader dalvik.system.PathClassLoader[/data/app/mathphreak.cellmap-1.apk],然后继续为java.lang.NoClassDefFoundError: com.google.android.maps.MapView导致不同的NoClassDefFoundError。

5 个答案:

答案 0 :(得分:50)

确保您在应用程序清单中包含以下行

<uses-library android:required="true" android:name="com.google.android.maps" />

确保它位于正确的位置 。我的问题(有类似的错误消息)是我把它放在那里,但就像使用权限的东西,它只是在根元素清单下,实际上 uses-library元素假设是放置在应用程序元素下 。如果我不够清楚,请参阅该部分:从Sameers link配置应用程序清单。

答案 1 :(得分:12)

我遇到了同样的问题,由于Timo Lehto的答案,我把它修好了,但是把这个字符串

<uses-library android:required="true" android:name="com.google.android.maps" />

打开应用程序标签后(开头)

   <application
        android:hardwareAccelerated="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <uses-library
            android:name="com.google.android.maps"
            android:required="true" />

        <activity ...

答案 2 :(得分:2)

我遇到了同样的问题,我在清单中解决了这个问题:

<activity android:name=".GpsActivity" ></activity>

<activity android:name="GpsActivity" ></activity>

“点”是差异

答案 3 :(得分:1)

可能有两件事。

i)确保已在AndroidManifest.xml类中定义了所有Activity类。

ii)确保使用“Google API”而非“Android 2.x”编译Android项目,如果仅使用Google API进行编译,则会添加Google地图类。

答案 4 :(得分:1)

还有一件事需要检查,

  • 如果您有两组地图库。然后它不起作用。请检查构建路径。

希望,这可能适用于某个人。