问题标签 [deadobjectexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 如何解决Android DeadObjectException 问题?
我目前正在通过从蓝牙设备接收数据到 Android 来绘制图形。
我遇到内存不足错误,留下一个问题。
一开始是接收数据,绘制实时图,当累积超过一定数量IndexOutOfBoundsException Index -1时,清除初始累积数据的任务出现错误,所以我用try catch捕获了异常。
然后发生内存溢出错误。
我尝试在 Manifest 中添加android:largeHeap=trueandandroid:hardwareAccelerated=false来解决这个内存溢出错误,但它似乎没有任何实际帮助。
在我收到警告后android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died,图表变慢了,应用程序被杀死了。
这是 BluetoothGattCallback 代码的一部分。
这个回调在绘制实时图形的 Fragment 中被调用。
这是 updateChart 代码。
我在 onCreateView 中像 lineChart、lineDataSet 一样初始化。
实际上我不确定调用时间和初始化时间的回调是分开的。
有 3 个这样的片段,每当数据更改时都会调用每个片段。
我不知道如何处理数据。请多回答..T_T
android - Android蓝牙:BLE回调onNotify中的DeadObjectException
我们使用的是具有显着特征的 ble 设备,我们使用 EnableNotification 通过回调获取数据。我们实现了一个命令队列,我们达到了不再发出任何命令的状态,我们只听特征通知。
随机一段时间后,我们遇到蓝牙服务/适配器死机的错误,在 logcat 中我们发现了 DeadObjectException。这是一个很难复制和跟踪的错误,但它对我们的应用程序至关重要。在回调中,我们尝试处理所有可能的异常(在每个类方法中),但无法处理 DeadObjectException,它似乎是在另一个进程中抛出的。
我们使用的设备每次触发发送2个字节的数据,每秒可以发送大约20个包。
我们没有任何运气找到这方面的帮助。有人可以给我们一些建议吗?有什么方法可以捕获蓝牙绑定器或服务引发的异常?处理显着特征的正确方法是什么?
这是 logcat 输出:
这是我们的回调示例:
使用空回调它仍然失败:
这是我们用于启用通知的代码: