4

所以我已经看到一个奇怪的例外来自我很确定是谷歌地图绘图代码。安卓谷歌地图nullpointerexception

我有一个片段,我在编程中添加一个SupportMapFragment,然后操作其中的GoogleMap实例。

这里的堆栈跟踪:

0 java.lang.NullPointerException 

1 at java.nio.ReadWriteDirectByteBuffer.put(ReadWriteDirectByteBuffer.java:137) 

2 at java.nio.ShortToByteBufferAdapter.put(ShortToByteBufferAdapter.java:163) 

3 at maps.z.d.d(Unknown Source) 

4 at maps.z.d.a(Unknown Source) 

5 at maps.aq.a.a(Unknown Source) 

6 at maps.aq.ao.b(Unknown Source) 

7 at maps.aq.ao.a(Unknown Source) 

8 at maps.v.g.a(Unknown Source) 

9 at maps.v.g.b(Unknown Source) 

10 at maps.p.p.l(Unknown Source) 

11 at maps.p.p.run(Unknown Source) 

我不能可靠地复制它(尽管它的发生往往),我已经看了ReadWriteDirectByteBuffer和ShortToByteBufferAdapter但没有我弹出。

任何想法?

+0

我已经与此解决方法。这不是一个解决方案,但至少可以避免应用程序一直崩溃。看看我自己的答案在这里:http://stackoverflow.com/questions/19624437/random-nullpointerexception-on-google-maps-api-v2/19627149#19627149 –

回答

4

我有同样的随机问题。

您可能想要试着保留issue on gmaps-api-issues

+0

疯狂,我看到你的反应,当我搜索堆栈跟踪线上。我去了,并添加了一个回应,希望有一些洞察力在那里。 –

+0

还在继续。出演并评论这个问题。 –

2

我有这个问题,并发现它被定格在我的应用程序通过实现的MapView的.onPause()方法中的片段的onPause()方法的MapView是英寸

我认为你需要在Fragment中实现所有这些方法,并确保它们在MapView上被调用。

MapView mapView; 

@Override 
public void onResume() { 
    mapView.onResume(); 
    super.onResume(); 
} 

@Override 
public void onDestroy() { 
    super.onDestroy(); 
    mapView.onDestroy(); 
} 

@Override 
public void onPause() { 
    super.onPause(); 
    mapView.onPause(); 
} 

@Override 
public void onLowMemory() { 
    super.onLowMemory(); 
    mapView.onLowMemory(); 
} 

我看到原始的海报会在片段中使用片段。相反,我在片段内使用MapView。看到这个职位如何做到这一点:Android - android.view.InflateException: Binary XML file line #8: Error inflating class fragment

+0

不知道我在哪里找到的代码,但我只有onResume onDestroy和onLowMemory,并且这个问题继续发生。添加onPause后,问题解决了。泰! – GuillermoMP

+0

但我有mapfragment不mapview然后怎么样? –