Java 谷歌地图Android版-多段线崩溃应用程序

Java 谷歌地图Android版-多段线崩溃应用程序,java,android,json,google-maps,geojson,Java,Android,Json,Google Maps,Geojson,我正在从.jsons文件导入geoJSON数据。它可以很好地处理某些文件,但不能处理其他文件。我认为我的文件有问题,但我测试了他们,以及没有问题 以下是堆栈: FATAL EXCEPTION: main Process: com.example.andrea.blank_test, PID: 8780 java.lang.NoSuchMethodError: No virtual method isClickable()Z in class Lcom/google/android/gms/map

我正在从.jsons文件导入geoJSON数据。它可以很好地处理某些文件,但不能处理其他文件。我认为我的文件有问题,但我测试了他们,以及没有问题

以下是堆栈:

FATAL EXCEPTION: main
Process: com.example.andrea.blank_test, PID: 8780
java.lang.NoSuchMethodError: No virtual method isClickable()Z in class Lcom/google/android/gms/maps/model/PolylineOptions; or its super classes (declaration of 'com.google.android.gms.maps.model.PolylineOptions' appears in /data/data/com.example.andrea.blank_test/files/instant-run/dex/slice-dependencies_2c16afb1f7a3d667bc9f1bb08f04b953876fdec1-classes.dex)
    at com.google.maps.android.geojson.GeoJsonLineStringStyle.toPolylineOptions(GeoJsonLineStringStyle.java:167)
    at com.google.maps.android.geojson.GeoJsonRenderer.addLineStringToMap(GeoJsonRenderer.java:297)
    at com.google.maps.android.geojson.GeoJsonRenderer.addFeatureToMap(GeoJsonRenderer.java:238)
    at com.google.maps.android.geojson.GeoJsonRenderer.addFeature(GeoJsonRenderer.java:166)
    at com.google.maps.android.geojson.GeoJsonRenderer.addLayerToMap(GeoJsonRenderer.java:117)
    at com.google.maps.android.geojson.GeoJsonLayer.addLayerToMap(GeoJsonLayer.java:112)
这是我非常简单的代码

int d = R.raw.geojson;
try {
    GeoJsonLayer layer = new GeoJsonLayer(map, d,
            getApplicationContext());
    layer.addLayerToMap();
} catch (Exception ex){
    Log.e("hey", ex.toString());
}


欢迎任何想法

您可能无法在gradle文件中添加依赖项。下面是一个简短的例子:

依赖关系{
编译'com.google.android.gms:play services:8.4.0'
}

但这只是我的假设。也许你也无法在你的应用程序中获得谷歌服务。如果您可以共享更多代码,我可以为您提供更多帮助。

您可能无法在gradle文件中添加依赖项。下面是一个简短的例子:

依赖关系{
编译'com.google.android.gms:play services:8.4.0'
}

但这只是我的假设。也许你也无法在你的应用程序中获得谷歌服务。如果您可以共享更多代码,我可以为您提供更多帮助。

问题在于Google Play Services 8.3.0版中的
PolylineOptions
实现不包括
isClickable()
方法

它是在8.4.0版中添加的,如果您查看一下
GeoJsonLineStringStyle.java
,您会发现它在24天前已经更改为添加多段线可点击性。因此,要解决您的问题,您需要从

compile 'com.google.android.gms:play-services:8.3.0'


问题在于Google Play Services 8.3.0版中的
PolylineOptions
实现不包括
isClickable()
方法

它是在8.4.0版中添加的,如果您查看一下
GeoJsonLineStringStyle.java
,您会发现它在24天前已经更改为添加多段线可点击性。因此,要解决您的问题,您需要从

compile 'com.google.android.gms:play-services:8.3.0'


你能分享你的build.gradle吗?添加到Answer你能分享你的build.gradle吗?添加到Answer项目依赖项{classpath'com.android.tools.build:gradle:2.0.0-beta6'classpath'com.google.gms:google services:1.5.0'}应用依赖项{compile'com.google.android.gms:play services:8.3.0'compile'com.google.maps.android:android-maps-utils:+'}此外,我不认为这是一个依赖性缺陷,因为地图和一些geoJSON都可以工作。它只是一些功能正在破坏整个过程,但在在线谷歌地图上,它们没有破坏任何东西。添加了详细的渐变来回答项目依赖性{classpath'com.android.tools.build:gradle:2.0.0-beta6'classpath'com.google.gms:google services:1.5.0'}应用依赖项{compile'com.google.android.gms:play services:8.3.0'compile'com.google.maps.android:android-maps-utils:+'}此外,我不认为这是一个依赖性缺陷,因为地图和一些geoJSON都可以工作。它只是一些功能正在破坏整个过程,但在在线谷歌地图上,它们没有破坏任何东西。将详细的渐变添加到answerWorks。必须做这些事情才能升级到8.4.0。必须做这些事情才能升级到8.4.0