Вы можете обойти конфликт, используя внешний псевдоним.Вот как это сделать.
Создайте файл mcs.rsp
в папке Assets
.Напишите что-нибудь в этом роде:
-reference:Newtonsoft=Assets/Plugins/newtonsoft.json.dll
Измените путь так, чтобы он соответствовал архитектуре вашего проекта.(вы можете использовать fastjon.dll, если хотите)
Подробнее о mcs.rsp
: https://docs.unity3d.com/Manual/PlatformDependentCompilation.html
Затем в файле .cs виновника добавьте следующее:
extern alias Newtonsoft;
using UnityEngine;
using JObject = Newtonsoft::Newtonsoft.Json.Linq.JObject;
// ...
Другим решением будет декомпиляция (последние IDE, такие как Rider / MVS, могут сделать это за вас), перестройка одной из управляемых DLL и переименование пространства имен.Возможно, вам придется изменить все сценарии, используя измененную DLL.
Вот несколько рекомендаций по созданию DLL для Unity (не забудьте скомпилировать с параметром -sdk: 2.0, он не указан в этом документе, новаша dll должна работать с Unity): https://docs.unity3d.com/Manual/UsingDLL.html
Кстати, отправьте запрос сопровождающему плагина, чтобы предупредить их о столкновении пространства имен.