Json.NET under Unity3d for iOS

2019-04-07 21:08发布

问题:

has anyone succeeded to adapt/port Json.NET to a version able to run under Unity3d deployed to iOS (and the webplayer, and android, too, but these seem less problematic), somehow overcoming the AOT issues there?

Or are there plans to release a compatible version of Json.NET?

Many thanks,

Max

回答1:

Newtonsoft Json fails AOT in iOS and also fails at deserializing anything inheriting from KeyedCollection in the webplayer. Here's a version that has been fixed:

JSON .NET For Unity (Supports iOS)



回答2:

Nope AFAIK.

LitJson and JsonFX would be alternate choice for Unity3D.

http://wiki.unity3d.com/index.php?title=UnityLitJSON



回答3:

We use MiniJson and so far it serves our json needs well :)



回答4:

Have a look at the modified version of LitJson: UnityLitJson


Actually LitJson has some issues and is not always working as expected, so I created a simple JSON-Lib that can handle all Unity3D Types, Enums and arbitrary classes. Find it at GitHub: Tiny-JSON

You can use it very simple:

// encode
Animal a = new Animal(4);
string json = Json.Encode(a);

// decode
IList<Animal> a = Json.Decode<IList<Animal>>("[{\"legs\":4}, {\"legs\":2}]");


回答5:

Yes, we share code on client and server and use an older version when it was called NewtonSoft.Json. Works in IOS, Android, everything.

Search for NewtonSoft.Json, and you could probably find an archive.