A / libc:致命信号11SIGSEGV,同时使用gson.fromJson

问题描述

我正在尝试创建一个实时绘图应用程序,其中两个用户可以在同一画布上一起绘制

public class Draw {

public int color;
public int strokeWidth;
public Path path;

public Draw(int color,int strokeWidth,Path path) {

    this.color = color;
    this.strokeWidth = strokeWidth;
    this.path = path;

}

}

我创建了ArrayList<Draw> paths = new ArrayList<>();

我现在在其中存储Draw对象以实现实时绘图,我使用gson库将上述paths对象转换为JSON,但是当我尝试反序列化时,我的应用程序因该错误而崩溃

A/libc: Fatal signal 11 (SIGSEGV),code 2,fault addr 0xe8600660 in tid 30739 (example.drawing)

for(Draw d : paths)
{
     mPaint.setColor(d.color); // WRONG
     mPaint.setstrokeWidth(d.strokeWidth);
     mPaint.setMaskFilter(null);
     mCanvas.drawPath(d.path,mPaint);
}

绘制后,这是我序列化路径数组String element = gson.toJson(paths);

的方式

首先,如果反序列化成功,我将尝试对其进行反序列化。我将使用firebase将其发送给其他人的设备,现在,我尝试使用此行代码对上述元素字符串进行反序列化

ArrayList<Draw> ddd = gson.fromJson(element,new Typetoken<ArrayList<Draw>>() {}.getType());

如果我评论反序列化应用程序不会崩溃

在其他StackOverflow答案中,他们说这是android分配空间之类的问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...