android - 谷歌地图 v1 在 Android 10 中崩溃

标签 android google-maps

我正在尝试在我的 Android 应用程序中使用 google map v1,但只要我在 Android 10 中打开 map Activity ,应用程序就会崩溃。

*FATAL EXCEPTION: DataRequestDispatcher
Process: c.techahead.androidmapsv1, PID: 6646
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/client/HttpClient;
    at com.google.android.maps.MapActivity.<init>(MapActivity.java:356)
    at c.techahead.androidmapsv1.MainActivity.<init>(MainActivity.java:8)
    at java.lang.Class.newInstance(Native Method)
    at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:95)
    at android.support.v4.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:43)
    at android.app.Instrumentation.newActivity(Instrumentation.java:1250)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3182)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
   *

构建.gradle

android {
    compileSdkVersion 28
    buildToolsVersion "25.0.2"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 26
        multiDexEnabled true
        useLibrary 'org.apache.http.legacy'
    } 
    dependencies {
    provided files('libs/maps.jar')
     compile files('libs/org.apache.http.legacy.jar')
    compile files('libs/httpclient-4.0.3.jar')
}

最佳答案

对 Apache HTTP 客户端的支持是 removed从 Android 9 开始。您需要做的是添加以下声明:

<uses-library
    android:name="org.apache.http.legacy"
    android:required="false" />

<application> 内你的元素AndroidManifest.xml .

请注意,如果您使用(或更新为)com.google.android.gms:play-services-maps:16.1.0或以上,那么你根本不需要添加它。有关详细信息,请查看 Google 的 documentation .

希望这对您有所帮助!

关于android - 谷歌地图 v1 在 Android 10 中崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58028211/

相关文章:

javascript - 如何使谷歌地图默认指向美国?

javascript - 使用瓦片重建/缓存谷歌地图供离线个人使用

java - 仅导入 Facebook 好友

android - 为什么 Activity 的方法 onCreateOptionMenu() 通过使用 setHasOptionMenu(true) 来调用它的 Fragments 两次?

android - index.xml 中的钛安卓菜单

Java - 通过 URL 在 Google map 上显示多个目的地

android - 远处的 AR 图像跟踪器?

javascript - 如何在 expo 中以编程方式启用/禁用 textinput?

javascript - 所有 Google Maps API V3 库均出现 404 Not Found 错误

安卓谷歌地图 : disable dragging in MapFragment