gpt4 book ai didi

java - Android 应用程序中 MarkerOptions.position 中的 NullPointer 与 Google map

转载 作者:行者123 更新时间:2023-12-01 23:10:08 26 4
gpt4 key购买 nike

我像疯子一样用谷歌搜索,但似乎没有人遇到这个确切的问题,而且到目前为止我不知道如何重现它。

这不是 googleMap 为 null 的问题的重复问题,我有正确的 googleMap 对象并且它不为 null,请进一步阅读。

我们有一个应用程序在 4 个不同的屏幕上使用 Google map ,Crashlytics 向我展示了很多这样的崩溃:

Caused by java.lang.NullPointerException
Attempt to invoke virtual method 'com.google.android.gms.maps.model.MarkerOptions com.google.android.gms.maps.model.MarkerOptions.position(com.google.android.gms.maps.model.LatLng)' on a null object reference
com.androidmapsextensions.lazy.LazyMarker.setPosition (LazyMarker.java:203)
com.androidmapsextensions.impl.DelegatingMarker.setPosition (DelegatingMarker.java:199)
java.lang.reflect.Method.invoke (Method.java)
android.util.ReflectiveProperty.set (ReflectiveProperty.java:118)
android.animation.PropertyValuesHolder.setAnimatedValue (PropertyValuesHolder.java:962)
android.animation.ObjectAnimator.animateValue (ObjectAnimator.java:990)
android.animation.ValueAnimator.animateBasedOnTime (ValueAnimator.java:1316)
android.animation.ValueAnimator.doAnimationFrame (ValueAnimator.java:1446)
android.animation.AnimationHandler.doAnimationFrame (AnimationHandler.java:146)
android.animation.AnimationHandler.-wrap2
android.animation.AnimationHandler$1.doFrame (AnimationHandler.java:54)
android.view.Choreographer$CallbackRecord.run (Choreographer.java:909)
android.view.Choreographer.doCallbacks (Choreographer.java:723)
android.view.Choreographer.doFrame (Choreographer.java:655)
android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:897)
android.os.Handler.handleCallback (Handler.java:789)
android.os.Handler.dispatchMessage (Handler.java:98)
android.os.Looper.loop (Looper.java:164)
android.app.ActivityThread.main (ActivityThread.java:6944)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)

如果来 self 的应用程序和我调用 MarkerOptions.position 的所有位置,该堆栈跟踪中没有类,看起来类似于:

Marker busPosition = googleMap.addMarker(new MarkerOptions()
.position(busStopPosition)
.flat(true)
.title(busPositions.getRoute())
.icon(bitmapDescriptor)
.anchor(0.5f, 0.5f)
.data(busPositions)
.clusterGroup(2));

正如你所看到的,MarkerOptionsNO WAY可以为空,但根据异常,它是!这怎么可能,我该如何解决这个问题,甚至找出我们使用 map 的 4 个地方中的哪个地方发生了这种情况?

一些附加信息:

  • 似乎当应用程序处于后台以及前台时都会发生此异常
  • 这种情况发生在运行 Android 4.4.2 及更高版本的设备上

我们将不胜感激所有帮助!

最佳答案

不知何故,我尝试了您的代码,一旦我调用 .data(busPositions),您的代码就变得 Not Acceptable 。顺便说一句,我们像这样添加 map 标记,试试这个

googleMap.clear();
LatLng latlng = new LatLng(location.getLatitude(), location.getLongitude());
MarkerOptions options = new MarkerOptions()
.position(latlng)
.title(address);
googleMap.addMarker(options);

关于java - Android 应用程序中 MarkerOptions.position 中的 NullPointer 与 Google map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58380983/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com