我收到一个奇怪的错误,因为如果我在真正的手机上运行应用程序, 它没有给出这个错误(Android 5.0)。但在模拟器(Android 6.0)上,它给了我这个错误:
致命的例外:主要 处理:com.doppler.stackingcoder.pechhulp,PID:11424 java.lang.NullPointerException:尝试调用虚方法 ' double android.location.Location.getLatitude()'在null对象上 参考 在 com.doppler.stackingcoder.pechhulp.PechhulpActivity.onLocationChanged(PechhulpActivity.java:171) 在 com.doppler.stackingcoder.pechhulp.PechhulpActivity.onMapReady(PechhulpActivity.java:126)
这是我的PechhulpActivity:
https://gist.github.com/soufyanekaddouri/6e3a3746be137e2680caa32d7bb746d9
答案 0 :(得分:1)
关于您的崩溃,您假设至少有一个提供商将从Location
返回getLastKnownLocation()
。在设备或仿真器上不需要这样做。您需要处理所有提供商从null
返回getLastKnownLocation()
的情况。这可能是因为没有尝试使用该位置。或者,请求位置更新,然后使用第一次更新中的位置。