Unity Newtonsoft插件在ios无法序列化出json的问题 以及反序列化的问题

Newtonsoft是使用量最多的json插件,我在unity引用了这个插件,在ios端将对象序列化成json的时候出问题了,
我们一开始在网上的学习资料或者其他地方找到定义json解析类的时候,每个变量都会添加{get; set;}字段变成属性块
但是这种写法在ios序列化的时候会导致序列化失败,之前自己找了很久也没找到问题,这里就记录一下

参考链接
Unity iOS (De)SerializeObject() doesnt work

链接里面的方法好像不仅对序列化起作用 对反序列化也起作用,unity程序在ios使用Newtonsoft不能反序列化的问题我是用另一个方法解决的。这种方法有点繁琐,可以尝试本文的方法。
Unity NewtonSoft插件 反序列化json报错 Unable to find a constructor 以及 反序列化出来的对象没有值的问题

这是改之前的代码:

public class SearchConditionInfo 
{
    public string areaTag { get; set; }
    public int exhibitionId { get; set; }
    public string hallTag { get; set; }

    [Preserve]
    public SearchConditionInfo(string areaTag, int exhibitionId, string hallTag)
    {
        this.areaTag = areaTag;
        this.exhibitionId = exhibitionId;
        this.hallTag = hallTag;
    }

    [Preserve]
    public SearchConditionInfo()
    {

    }

}

这是改之后的代码

public class SearchConditionInfo 
{
    public string areaTag;
    public int exhibitionId;
    public string hallTag;

    [Preserve]
    public SearchConditionInfo(string areaTag, int exhibitionId, string hallTag)
    {
        this.areaTag = areaTag;
        this.exhibitionId = exhibitionId;
        this.hallTag = hallTag;
    }

    [Preserve]
    public SearchConditionInfo()
    {

    }

}

你可能感兴趣的:(Unity Newtonsoft插件在ios无法序列化出json的问题 以及反序列化的问题)