2012-06-12 59 views
1

這是出於某種原因對xml不可見,並且應用程序崩潰。 我該怎麼辦才能修復它?Google Map:我無法使用MapView

的manifest.xml

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:id="@+id/map_holder" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"> 

    <com.google.android.maps.MapView -----> do not recognize this 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/map" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:apiKey="my_key" 
    /> 
</LinearLayout> 

這是例外,我得到!

致命異常:主要

java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation 
at dalvik.system.DexFile.defineClass(Native Method) 
at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:207) 
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:200) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 
at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:130) 
at android.app.ActivityThread.main(ActivityThread.java:3691) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:507) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665) 
at dalvik.system.NativeStart.main(Native Method) 

如何解決呢?

+0

你能提供完整的mapView_layout嗎? – Goofyahead

+0

我編輯了這個。 – IamStalker

回答

0

有你在AndroidManifest文件添加<uses-library android:name="com.google.android.maps"/>,還可以使用谷歌API的Android SDK建設項目並添加<uses-permission android:name="android.permission.INTERNET"/>在您AndroidManifest Internet權限。

+0

如何添加此內容:Google API Android IntelliJ – IamStalker

+0

中的SDK在'ProjectExplorer'上右鍵點擊你的項目選擇'Open Module Settings',它將從那裏打開一個窗口,在模塊設置標籤中選擇'Modules',在右側面板中有一個Module SDK下拉列表選擇所需的Android如果您之前已經下載了GoogleAPI,或者從新的按鈕創建新的並給出您的SDK路徑,則使用Google API的SDK版本。 –

+0

我確實添加了它,但它仍然不起作用 – IamStalker

0

合適的班級使用的是:

com.google.android.maps.MapView 
+0

這是我使用的方式 – IamStalker

+0

您是否已將此行放入您的AndroidManifest.xml中?' – thomasg