NullPointerException из Google maps
Я только недавно начал получать nullpointerexception с Android google maps, и я не могу понять, что вызывает его. В настоящее время об этом сообщается только на устройстве HTC Desire 500 (z4u), работающем под управлением Android 4.1. Любые предложения или идеи будут высоко оценены.
Edit:
Итак, я получил руки на устройстве, которое дает ошибку (HTC Desire, Android 4.1.2, HTC SDK API 5.26). Как я подозревал по трассе, это чисто внутренняя ошибка.
Следующее не помогло:
- Перезагрузка
- Переустановка
- Самая новая версия сервисов google play.
- Обновить приложение для использования игровых сервисов 8.3.0
След стека показан ниже:
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.access$600(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$4.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
Ответы
Ответ 1
Так как подозревается, что это проблема на стороне googles. Они проверили ошибку и работают над исправлением (2015-12-21), см. googles bug tracker для актуальной информации о проблема.
Edit:
Итак, я должен проверить информацию Georges SD и да, вставив SD-карту, решила проблему. Таким образом, из этого мы можем заключать телефоны, у которых нет внутреннего фальшивого внешнего хранилища (например, большинство телефонов в настоящее время в течение нескольких дней), выйдет из строя из этой ошибки... Таким образом, это может быть обходным решением для тех, кто работает в корпоративном сегменте, но для те, кто работает в потребительском сегменте, это не очень поможет...
Редактировать 20 января 2016 года
Разработчик из команды Google объявил о том, что исправление было совершено, и оно будет выпущено со следующей крупной версией игры Google, но пока не установили график.
Редактировать Jun 02, 2016
Разработчик из команды Google объявил, что он подтвержден исправлен:
Извините, это заняло так много времени, чтобы исправить, но вот исправление ошибок, которое вы были ожидая!
Мы можем подтвердить, что эта проблема теперь исправлена в версии 9.0.83 Службы Google Play, выпущенные в мае 2016 года.
Ответ 2
Хорошо нашел решение в моем случае через 5 часов.
Не касаясь устройства (HTC Desire X 4.1.1), все, что я сделал, это установить SD-карту, и ошибка волшебным образом исчезла. Установите SD-карту, перезагрузите (обновленные фотографии Google в процессе, я не думаю, что это имеет какое-либо отношение к проблеме).
За громкий крик!
Ответ 3
Добавление размера SD-карты в мой эмулятор работало для меня.
эмулятор Android
Ответ 4
У вас есть эти
<!-- 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" />
Это может решить проблему.