来自 Google 个映射的 NullPointerException

NullPointerException from Google maps

我最近刚开始收到来自 Android google 地图的 nullpointerexception,但我不知道是什么原因造成的。目前仅在 HTC Desire 500 (z4u) 设备 运行 android 4.1 上报告过。任何建议或想法将不胜感激。

编辑:

所以我得到了一个出现错误的设备(HTC Desire,Android 4.1.2,HTC SDK API 5.26)。正如我从跟踪中怀疑的那样,这纯粹是内部错误。 以下没有帮助:

堆栈跟踪如下所示:

java.lang.RuntimeException: Unable to resume activity {dk.mobikom.android/dk.mobikom.android.activities.ContactDetailActivity}: java.lang.NullPointerException
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3036)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3077)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2373)
    at android.app.ActivityThread.access0(ActivityThread.java:151)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1330)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:155)
    at android.app.ActivityThread.main(ActivityThread.java:5536)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:511)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1074)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:841)
    at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
    at com.google.maps.api.android.lib6.gmm6.m.ad.a(Unknown Source)
    at com.google.maps.api.android.lib6.gmm6.c.h.a(Unknown Source)
    at com.google.maps.api.android.lib6.gmm6.c.y.a(Unknown Source)
    at com.google.maps.api.android.lib6.e.bd.a(Unknown Source)
    at com.google.maps.api.android.lib6.e.ev.a(Unknown Source)
    at com.google.maps.api.android.lib6.e.z.a(Unknown Source)
    at com.google.maps.api.android.lib6.e.y.a(Unknown Source)
    at com.google.android.gms.maps.internal.u.onTransact(SourceFile:107)
    at android.os.Binder.transact(Binder.java:326)
    at com.google.android.gms.maps.internal.IMapFragmentDelegate$zza$zza.onCreateView(Unknown Source)
    at com.google.android.gms.maps.SupportMapFragment$zza.onCreateView(Unknown Source)
    at com.google.android.gms.dynamic.zza.zzb(Unknown Source)
    at com.google.android.gms.dynamic.zza.zza(Unknown Source)
    at com.google.android.gms.dynamic.zza.onCreateView(Unknown Source)
    at com.google.android.gms.maps.SupportMapFragment.onCreateView(Unknown Source)
    at android.support.v4.app.Fragment.performCreateView(Fragment.java:1962)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1026)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207)
    at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1572)
    at android.support.v4.app.Fragment.performResume(Fragment.java:2012)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1067)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1189)
    at android.support.v4.app.FragmentManagerImpl.dispatchResume(FragmentManager.java:2011)
    at android.support.v4.app.FragmentController.dispatchResume(FragmentController.java:187)
    at android.support.v4.app.FragmentActivity.onResumeFragments(FragmentActivity.java:426)
    at android.support.v4.app.FragmentActivity.onPostResume(FragmentActivity.java:415)
    at android.support.v7.app.AppCompatActivity.onPostResume(AppCompatActivity.java:141)
    at android.app.Activity.performResume(Activity.java:5161)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3019)
    ... 12 more

所以怀疑这是谷歌方面的问题。他们已验证错误并正在修复 (2015-12-21),请参阅 googles bug tracker 了解有关该问题的最新信息。

编辑:

所以我必须测试 Georges SD 信息,是的,插入 SD 卡解决了问题。因此,我们可以得出结论,没有内部伪造外部存储的手机(就像现在大多数手机一样)会因为这个错误而崩溃......所以这可能是那些在企业部门工作的人的解决方法,但对于那些在消费者领域工作的人,这并没有多大帮助...

编辑 2016 年 1 月 20 日

Google 团队的一名开发人员宣布修复已经完成,将在 Google play 的下一个主要版本中推出,但他们尚未设定时间表到此为止。

编辑 2016 年 6 月 2 日

Google 团队的一名开发人员宣布已确认已修复:

Sorry this took so long to fix, but here is the bug fix you've been waiting for!

We can confirm that this issue is now fixed in version 9.0.83 of Google Play Services, released in May 2016.

好的,5 小时后我的案例找到了解决方案。

在不接触设备 (HTC Desire X 4.1.1) 的情况下,我所做的只是安装 SD 卡,错误神奇地消失了。安装 SD 卡,重新启动(更新 Google 过程中的照片,我认为这与问题无关)。

大声呐喊!

你试过这些吗

<!-- EXTERNAL_STORAGE permissions are optional for Android 6.0 onwards. -->
    <uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        android:maxSdkVersion="22" />
    <uses-permission
        android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:maxSdkVersion="22" />

这可能会解决问题。

在我的模拟器上增加 SD 卡的大小对我有用。

Emulator Android