Я использовал mapbox SDK 6.3.0. Я могу добавить многоугольник на карту и разрешить пользователю перетаскивать его, изменив элемент, а затем обновив коллекцию объектов следующим образом:
features.set(features.indexOf(oldFeature), newFeature);
symbolsSource.setGeoJson(symbolsCollection);
Все работало нормально.
Затем я попытался обновить SDK с 6.3.0 до 7.3.0.
Затем, внезапно, при перетаскивании, я получаю следующий сбой (прерывистый, но частый)
2019-04-29 17: 58: 03.119 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] JNI ОБНАРУЖЕНА ОШИБКА В ПРИЛОЖЕНИИ: невозможно вызвать java.lang. Строка com.mapbox.geojson.Feature.id () для нулевого объекта
2019-04-29 17: 58: 03.119 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] при вызове CallObjectMethodV
2019-04-29 17: 58: 03.119 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] "Thread-2368" prio = 10 tid = 65 Runnable
2019-04-29 17: 58: 03.119 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] | group = "main" sCount = 0 dsCount = 0 flags = 0 obj = 0x1b740000 self = 0x763d1b6800
2019-04-29 17: 58: 03.119 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] | sysTid = 24204 nice = -10 cgrp = sched по умолчанию = 0/0 handle = 0x76385da4f0
2019-04-29 17: 58: 03.120 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] | состояние = R schedstat = (1253639661 195250540 1454) utm = 117 STM = 8 основных = 7 Гц = 100
2019-04-29 17: 58: 03.120 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] | stack = 0x76384df000-0x76384e1000 stackSize = 1009KB
2019-04-29 17: 58: 03.120 24115-24204 / com.app.fr.dev A / stresponder.de: java_vm_ext.cc:542] | hold mutexes = "блокировка мутатора" (общая задержка) ....
Нет журнала, который указывает на какую-либо точку в моем коде.
Я надеюсь, что это может быть проблемой с Mapbox SDK, потому что когда я возвращаюсь обратно к 6.3.0, он работает нормально . Я не могу точно определить реальную проблему. Может кто-нибудь сказать мне, как на самом деле отладить такой сбой?
Пожалуйста, дайте мне знать, если я должен предоставить больше информации.
Заранее спасибо.
Изменить: Это не дубликат nullpointer , потому что это не происходит с моим кодом. Это происходит внутри SDK Mapbox, как вы можете видеть из журнала. Также обратите внимание, что выдаваемая ошибка - это ошибка JNI.