I’m currently working on a Android app (started by another developer) that uses the Shinobi Controls library for the graphs displayed in our app. I’m reluctant to post any code because there’s so much of it, but in any case, many users of our app are sending crash reports to our Google Play Developer Console with the following stack trace:
java.lang.NullPointerException: Attempt to invoke virtual method ‘double com.shinobicontrols.charts.cp.b(com.shinobicontrols.charts.CartesianSeries)’ on a null object reference
It’s a recurring issue that has occured several times every week for the past 2 months or so. It occured 13 times on Android 5.0, 4 times on Android 4.4, and 2 times on Android 5.1. As for devices, it’s occured on the Galaxy S5, Galaxy S4, OnePlus One, LG G3, Galaxy Note 4, Galaxy Tab S 8.4, Nexus 6, Nexus 5, and HTC ONE. As for which version of the Shinobi Controls library we’re using, the AndroidManifest says versionCode=“1007001” and versionName=“1.7.1-1”.
Part of the problem is that because the code has been obfuscated, we can’t use the stack trace to determine where exactly the error is occuring. In addition, we can’t reproduce this crash on any of our devices, so it’s difficult to pinpoint exactly what’s causing this issue.
Are you able to look at your obfuscated code base side-by-side with the original code, and let us know exactly ‘what’s calling what’ to help give us a better idea of what we need to fix?