android – 应用程序(9.2)和第三方库(8.4)中不同Google Play服务版本之间的冲突

我正在使用
Android Studio的Android项目中工作.

该项目是一个使用某些第三方库的应用程序.其中一个使用Google Play Services 8.4.0,但我的应用程序使用Google Play Services 9.2.0,我需要将此版本用于该应用程序的某些特定功能.

当我使用此依赖项编译和执行应用程序时

编译’com.google.android.gms:play-services-gcm:9.2.0′
编译’com.google.android.gms:play-services-location:9.2.0′

当我执行应用程序并执行第三部分库的代码时,我得到此错误(总结):

致命异议:主要
处理:com.example.app,PID:507
                                                                              java.lang.NoClassDefFoundError:解析失败:Lcom / google / android / gms / maps / model / LatLng;
                                                                               引起:java.lang.ClassNotFoundException:在路径上找不到类“com.google.android.gms.maps.model.LatLng”:DexPathList

如果我将Google Play服务版本降级到8.4.0就可以了,问题是我必须从应用中删除我的应用Google Play Services 9.2.0功能.

有没有办法强制第三方图书馆使用自己的Google Play Services Library版本并允许我的应用使用上一个Google Play服务版本?

最佳答案 更新到9.x.x版时,Google Play服务存在很多问题/问题.截至目前,我认为它仍然有一些
bug issue.

现在,对于收到java.lang.ClassNotFoundException的错误:在路径上找不到类“com.google.android.gms.maps.model.LatLng”:DexPathList.这是您用于谷歌地图API的jar文件的问题.检查罐子或下载适当的罐子.您可以反编译jar并查看有关类的信息.类文件不存在,因为它在日志中提到.

您还可以尝试其他解决方案是这个SO问题:

> Upgrade to Google Play Services:9.0.0 Error Failed
> Configuring google maps in Android app

点赞