Android Studio:加载时MapView应用崩溃
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio:加载时MapView应用崩溃相关的知识,希望对你有一定的参考价值。
我试图用我的位置标记显示地图。由于发生此错误,我决定在本教程(https://www.youtube.com/watch?v=mdCRxEn540U)之后从android Studio模板创建一个简单的基本应用程序。我做了几乎所有像教程一样的问题。在Google网站上正确生成API密钥。我的主应用程序发生了同样的错误:加载地图视图时应用程序崩溃(日志cat没有显示行错误)。不同之处可能在于SDK和API等工具。所以我在这里向你们展示,看看是否有人对此有任何线索。
这是SDK manager印刷品
这就是APIs in use
同样,我没有对Android Studio中的MapView模板应用程序代码进行任何更改。
可能会发生什么?
记录猫的消息:
08-30 19:49:42.694 17966-18008/com.appdidier.testmaps E/AndroidRuntime: FATAL EXCEPTION: Thread-6
Process: com.appdidier.testmaps, PID: 17966
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion;
at el.b(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):3)
at ek.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):4)
at em.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):51)
at com.google.maps.api.android.lib6.drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):11)
at dw.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):16)
at dw.run(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):61)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.http.ProtocolVersion" on path: DexPathList[[zip file "/system/priv-app/PrebuiltGmsCore/app_chimera/m/MapsDynamite.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000006/MapsDynamite.apk!/lib/x86, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at ad.loadClass(:com.google.android.gms.dynamite_dynamiteloader@12862026@12.8.62 (040700-199405334):25)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at el.b(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):3)
at ek.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):4)
at em.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):51)
at com.google.maps.api.android.lib6.drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):11)
at dw.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):16)
at dw.run(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):61)
答案
我有同样的错误,并将此行添加到清单文件后,它再次工作
<application
....
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
谷歌有关于此错误的issue
以上是关于Android Studio:加载时MapView应用崩溃的主要内容,如果未能解决你的问题,请参考以下文章
将 MapView 添加到 Android 应用程序时,获取跨加载器异常
Android MapView - 没有使用调试 API 密钥加载图块
通过单击列表视图上的列表项更改 MapView Android Studio 上的位置相机视图