java.lang.IllegalArgumentException: 南纬超过北纬 (23.029011581089936 > 23.0060917)

java.lang.IllegalArgumentException: southern latitude exceeds northern latitude (23.029011581089936 > 23.0060917)

我正在处理 Google 地图,我发现了一个以前从未遇到过的奇怪错误:这是详细信息。

我正在尝试使用

在边界中放置两个标记

latLngBounds = new LatLngBounds(mDestination, mOrigin); LatLngBounds.Builder builder = new LatLngBounds.Builder(); builder.include(mDestination).include(mOrigin);

我收到以下错误。

java.lang.IllegalArgumentException: southern latitude exceeds northern latitude (23.029011581089936 > 23.0060917)
    at com.google.android.gms.common.internal.Preconditions.checkArgument(Unknown Source:38)
    at com.google.android.gms.maps.model.LatLngBounds.<init>(Unknown Source:7)
    at com.cmrlabs.tracker.MainActivity.drawRoute(MainActivity.java:324)
    at com.cmrlabs.tracker.MainActivity.access0(MainActivity.java:73)
    at com.cmrlabs.tracker.MainActivity.onMapClick(MainActivity.java:410)
    at com.google.android.gms.maps.zzy.onMapClick(Unknown Source:2)
    at com.google.android.gms.maps.internal.zzak.dispatchTransaction(Unknown Source:5)
    at com.google.android.gms.internal.maps.zzb.onTransact(Unknown Source:12)
    at android.os.Binder.transact(Binder.java:667)
    at cj.b(:com.google.android.gms.dynamite_mapsdynamite@19831068@19.8.31 (100700-0):14)

我不知道如何解决这个问题,有什么建议吗?

提前谢谢你..!

LatLngBounds constructor有两个参数:西南角和东北角。那不是你所拥有的——你有两点,所以你不应该使用那个构造函数。相反,使用 Builder 并在最后调用 build() 来构造 LatLngBounds 对象:

LatLngBounds.Builder builder = new LatLngBounds.Builder();
builder.include(mDestination).include(mOrigin);
latLngBounds = builder.build();

我帮助回答了 ianhanniballake。 如果有人需要 Kotlin:

val bilder = LatLngBounds.builder()
bilder.include(TripMetrFragment.latLngFinish).include(TripMetrFragment.latLngStart)
val latLngBounds = bilder.build()
map.moveCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0))