Этот репо является вилкой Jamesnk/Newtonsoft.json, содержащей пользовательские сборки для регулярных автономных, но, что более важно, целей AOT, такие как все сборки IL2CPP (WebGL, iOS, Android, Windows, Mac OS X) и Portable .NET (UWP, WP8) Полем
С конца февраля 2022 года Unity опубликовал обновленную версию своего пакета : [email protected]
Их пакет, так как v2.0.0-preview.1 является вилкой этой вилки Newtonsoft.json. Это все еще верно для их последнего выпуска V3.0.1. Это означает, что, переключившись на их официальный пакет, вы получите:
Newtonsoft.Json.Utilities.AotHelper
типа I разветвляется от саладлаба, который был основной частью этой вилки с самого начала.
Все мои IL2CPP и управляемые конкретные ошибки.
Продолжайте использовать актуальную вилку Newtonsoft.json, но теперь продолжайте в курсе сотрудников Unity, а не меня.
Кроме того, он практически всегда включается в новые версии Unity, как от этого зависят многие внутренние пакеты Unity, поэтому вам, вероятно, даже не нужно его устанавливать!
Я буду продолжать оказывать столько поддержки, сколько смогу в свободное время в этих вопросах и дискуссиях, однако, пожалуйста, сосредоточьтесь на билетах на поддержку на https://forum.unity.com/, https://answers.unity.com /и https://issuetracker.unity3d.com/.
Чтобы начать работу с их официальным пакетом, вы можете следовать моему руководству по установке здесь:
Предоставляет Newtonsoft.json V10.0.3, V11.0.2, V12.0.3 и V13.0.1 Альтернативы.
Newtonsoft.json-for-unity.converters Пакет для преобразования типов единиц, таких как Vector3, Quaternion, Color и многие, многие другие!
Полная поддержка сборки IL2CPP
Поставлено через менеджер пакетов Unity для легкого обновления и переключения версий
Полный набор тестов Newtonsoft.json.tests проходит на Unity 2018.4.14f1 и 2019.2.11f1 с Mono и IL2CPP в качестве бэкэнда сценариев.
Предварительно скомпилирован как DLL для более быстрых сборок
Newtonsoft.json.utility . Aothelper Cutility Class для решения общих проблем заранее. (Подробнее о AOT)
Обширная документация по решению проблем AOT с link.xml
Да. Теперь это так. С тех пор, как Unity принял этот пакет с конца февраля 2022 года, чтобы предоставить официально поддерживаемый пакет Newtonsoft.json в экосистему Unity. ♥
Моей целью было прежде, чем стать самым современным виком Newtonsoft.json для Unity. Unity Technologies в настоящее время взяли на себя эту роль.
Этот репозиторий завершил свою задачу: предоставить Newtonsoft.json. И теперь это полностью одобрено единством, я могу с радостью осуществить этот проект, как никто другой.
GUID [...] for assets '...' conflicts with: '...'
GUID [6c694cfdc33ae264fb33e0cd1c7e25cf] for asset 'Packages/jillejr.newtonsoft.json-for-unity/Plugins/Newtonsoft.Json AOT/Newtonsoft.Json.dll' conflicts with:
'Packages/com.unity.nuget.newtonsoft-json/Runtime/AOT/Newtonsoft.Json.dll' (current owner)
We can't assign a new GUID because the asset is in an immutable folder. The asset will be ignored.
Это связано с тем, что пакет Unity, com.unity.nuget.newtonsoft-json
, и этот пакет существует в проекте одновременно. Это не поддерживается, и нет прямых планов на выполнение этой работы.
Вы должны, к сожалению, удалить этот пакет, jillejr.newtonsoft.json-for-unity
и вместо этого полностью полагаться на их пакет.
diff --git a/Packages/manifest.json b/Packages/manifest.json
index 49a3afa..f0edd27 100644
--- a/Packages/manifest.json
+++ b/Packages/manifest.json
@@ -18,7 +18,7 @@
"com.unity.collab-proxy": "1.2.16",
"com.unity.test-framework": "1.1.22",
"com.unity.ugui": "1.0.0",
- "jillejr.newtonsoft.json-for-unity": "13.0.102",
+ "com.unity.nuget.newtonsoft-json": "3.0.1",
"jillejr.newtonsoft.json-for-unity.converters": "1.0.0",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
Подробнее: #111 (комментарий)
com.unity.nuget.newtonsoft-json
?Я попробовал так суммировать это как можно лучше на #145
Я написал документацию по установке новой официально принятой вилки (моей вилки) Newtonsoft.json, которую можно найти здесь: https://github.com/jillejr/newtonsoft.json-for-unity/wiki/install- Официальный Via-Upm
Установка через установку пакета (экспериментальный)
Нажмите здесь, чтобы загрузить
Install-jillejr.newtonsoft.json-for-unity-13.0.102.unitypackage
Откройте загруженный файл
.unitypackage
в Unity. Проще говоря, Drag'n'sdrop, введенное файл в окно единства.Нажмите «Импорт», чтобы импортировать все это.
После того, как установщик успешно скомпилирован, он добавит правильный реестр UPM и пакет в ваш проект, а затем снятие.
Установщик не работает до тех пор, пока ваш проект не сможет успешно скомпилировать. Убедитесь, что разрешайте все синтаксические и другие ошибки компиляции, даже временно, чтобы установщик мог выполнить.
Много любви ❤ @игольчатых инструментов за создание такого отличного инструмента!
Установка через OpenUpm
openupm add jillejr.newtonsoft.json-for-unityПолное руководство по установке на Wiki: установка через OpenUpm
Много любви ❤ @favoyang за то, чтобы сделать такой отличный инструмент!
Установка через Pure UPM
Полное руководство по установке на вики: установка через Pure UPM
Установка через git в UPM
Вы также можете установить через GIT. Это предполагает, что у вас установлен git на компьютере.
Это наименее рекомендуемая версия (но работает как запасная часть), потому что:
Вы не сможете обновить пакет через интерфейс Manager пакета, если вы установите через GIT.
Это требует, чтобы вы, ваши коллеги и ваши конвейеры CI/CD были установлены GIT для строительства проекта.
Для установки требуется гораздо больше времени, так как UPM в большинстве версий клонирует всю историю проекта.
В более поздних версиях Unity вы можете импортировать непосредственно через интерфейс диспетчера пакетов.
Поставьте следующий URL:
https://github.com/jilleJr/Newtonsoft.Json-for-Unity.git#upm
Полное руководство по установке на Wiki: установка через GIT в UPM
json.net
Благодарен, что вы даже читаете это :)
Если вы хотите внести свой вклад, вот что вы можете сделать:
Распространите слово! ❤ Больше пользователей → Больше отзывов → Я получаю больше силы для работы над этим проектом. Это лучший способ внести свой вклад!
Откройте проблему. Может быть, запрос функции для нового конвертера, или, может быть, вы нашли ошибку?
Решить одну из незнашиваемых вопросов. Если это выглядит как забавная задача для решения, и никого не назначено, просто прокомментируйте ее и скажите, что вы хотели бы попробовать это.
Я понимаю, что немногие из проблем тривиальны, поэтому, если вы хотите заняться чем -то маленьким, тогда посмотрите на список неопределенных проблем в репрессии пакета конвертеров Unity.
Откройте пиар с какой -то новой функцией или решением проблемы. Не забудьте спросить, прежде чем начать работать над чем -либо, поэтому не работают ни на одном и том же.
Наличие запроса на функцию или выпуска появления и наличие представителя, предлагая себе добавить пиар для решения, является абсолютным величайшим подарком, который может получить постановщик репозитория. ?
У меня есть этот файл appling.md, который содержит некоторые рекомендации. Может быть хорошо прочитать его заранее.
Эти документы были перенесены в ./ci/readme.md.
Все запросы на притяжение должны соответствовать правилам стиля замечания, найденным в файлах .remarkrc
в этом репо. Файлы .md
автоматически выводится по кодировке, но для того, чтобы запустить их локально, вы должны сначала установить некоторые предпосылки:
Установите NPM
Установите remark-cli
и некоторые пакеты стиля
# You may need to add "sudo"
npm install --global remark-cli
# Intentionally not globally
npm install remark-lint remark-preset-lint-markdown-style-guide remark-frontmatter
Тогда проки! Например:
$ remark .github
.github/ISSUE_TEMPLATE/bug_report.md: no issues found
.github/ISSUE_TEMPLATE/feature_request.md: no issues found
.github/ISSUE_TEMPLATE/not-working-as-expected.md: no issues found
.github/ISSUE_TEMPLATE/question.md: no issues found
.github/PULL_REQUEST_TEMPLATE/code-update.md: no issues found
.github/PULL_REQUEST_TEMPLATE/docs-update.md: no issues found
Достаточно общее явление, что у нас есть страница вики только для этого.
Прочитайте работу с филиалами, раздел «Слияние изменений с вики -страницы Jamesnks Repo».
Большинство изменений в этом репо могут быть применены ко всем различным версиям. Например, изменения в link.xml
или Bugfixes в Hotfix IL2CPP должны применяться ко всем различным версиям, 10.0.3, 11.0.2, 12.0.3 и т. Д.
Этот репо имеет файл .backportrc.json
, который используется CLI SQREN/Backport, чтобы упростить это. Это инструмент, который в основном просто делает git cherry-pick
, но с некоторыми другими функциями, такими как автоматически создание филиалов и PR.
Установить node.js: https://nodejs.org/en/download/
Установите CLI backport
во всем мире
npm install -g backport
Настройте инструмент backport
. Он нуждается в токенов Github Access и имя пользователя внутри ~/.backport/config.json
.
Более подробная информация здесь: https://github.com/sqren/backport/blob/master/docs/configuration.md#global-config-backportconfigjson
После слияния PR, посмотрите master
и вытащите недавно объединенный пиар, который вы хотите сделать, а затем запустите CLI backport
. Это интерактивно, так что просто следуйте шагам.
git checkout master
git pull
# The tool is interactive. Choose the merge commit you want to backport
# and it takes care of the rest.
backport
Этот проект, предоставленный стабильным опытом Newtonsoft.json сообществу Unity, является для меня хобби -проектом и всегда будет оставаться свободным.
Если этот инструмент дал вам что -то, что вы цените, подумайте о том, чтобы вернуть монету в этот инструмент. Спонсируйте меня чашкой кофе, я пью дешевые вещи! ☕
Этот пакет лицензирован по лицензии MIT (MIT)
Copyright © 2019 Kalle Jillheden (Jillejr)
https://github.com/jillejr/newtonsoft.json-for-unity
См. Полные авторские права в лицензии.