前提・実現したいこと
BLE通信規格でマイコンからandroidへ加速度センサの情報をnotifyで送信しています
そこでMPAndroidChartというライブラリを導入してそこに受けっとった数値を描画しています
しかし、情報を追加する間隔が狭くなればなるほど(推測)配列からデータを取得するときにエラーが起きてアプリが落ちるようになります
なのでこのエラーの回避方法が知りたいです
発生している問題・エラーメッセージ
E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.esp32ble, PID: 9784 java.lang.IndexOutOfBoundsException: Index: 1, Size: 3 at java.util.ArrayList.get(ArrayList.java:437) at com.github.mikephil.charting.renderer.LegendRenderer.renderLegend(LegendRenderer.java:377) at com.github.mikephil.charting.charts.BarLineChartBase.onDraw(BarLineChartBase.java:281) at android.view.View.draw(View.java:21651) at android.view.View.updateDisplayListIfDirty(View.java:20511) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4587) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4560) at android.view.View.updateDisplayListIfDirty(View.java:20469) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:584) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:590) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:668) at android.view.ViewRootImpl.draw(ViewRootImpl.java:3892) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3700) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2989) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1876) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8167) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1057) at android.view.Choreographer.doCallbacks(Choreographer.java:875) at android.view.Choreographer.doFrame(Choreographer.java:776) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1042) at android.os.Handler.handleCallback(Handler.java:900) at android.os.Handler.dispatchMessage(Handler.java:103) at android.os.Looper.loop(Looper.java:219) at android.app.ActivityThread.main(ActivityThread.java:8349) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1055)
試したこと
あらゆるところ配列にtry-catchで囲んでみましたが、特に引っかかることはありませんでした
グラフを描画するためのメソッドをtry-catchで囲んでもエラーは治りませんでした
補足情報(FW/ツールのバージョンなど)
MPAndroidChart
githubから追加しているライブラリ
V3.1.0
回答1件
あなたの回答
tips
プレビュー