Este repositório é um garfo de Jamesnk/newtonsoft.json contendo compilações personalizadas para os alvos independentes regulares, mas mais importante, como todas as construções de IL2CPP (Webgl, iOS, Android, Windows, Mac OS X) e Portable .NET (UWP, WP8) .
Desde o final de fevereiro de 2022, a Unity publicou uma versão atualizada de seu pacote : [email protected]
O pacote deles, desde v2.0.0-preview.1, é um garfo deste garfo de newtonsoft.json. Isso ainda é verdade para o lançamento mais recente da v3.0.1. Isso significa que, mudando para o pacote oficial, você receberá:
O Newtonsoft.Json.Utilities.AotHelper
tipo I foi bifurcado do Saladlab que tem sido uma parte central desse garfo desde o início.
Todas as minhas bugs específicas do IL2CPP e gerenciado.
Continue a usar um garfo atualizado do newtonsoft.json, mas agora mantido atualizado pelos funcionários da Unity em vez de mim.
Além disso, é praticamente sempre incluído em versões mais recentes da Unidade, pois muitos dos pacotes internos da Unity dependem disso, então você provavelmente nem precisa mais instalá -lo!
Continuarei a fornecer o máximo de apoio possível no meu tempo livre nas questões e discussões, no entanto, concentre seus ingressos para https://forum.unity.com/, https://answers.unity.com /, e https://issuetracker.unity3d.com/.
Para começar com o pacote oficial, você pode seguir meu guia de instalação aqui:
Fornece Newtonsoft.json v10.0.3, v11.0.2, v12.0.3 e v13.0.1 alternativas.
Pacote newtonsoft.json for-unity.converters para converter tipos de unidade, como o vetor3, quaternion, cor e muitos, muitos mais!
Suporte total para construções de IL2CPP
Entregue via Unity Package Manager para facilitar a atualização e a troca de versão
A suíte de teste completa newtonsoft.json.tests passa na Unity 2018.4.14f1 e 2019.2.11f1 com mono e il2cpp como back -end de script.
Pré -compilado como DLLs para construções mais rápidas
Newtonsoft.json.utility . Classe de utilidade de Aothelper para resolver problemas comuns antes do tempo. (Leia mais sobre AOT)
Documentação extensa da solução de problemas de AOT com link.xml
Sim. Agora é. Desde que a Unity adotou este pacote desde o final de fevereiro de 2022, para fornecer um pacote de Newtonsoft.json com manutenção oficial ao ecossistema da unidade. ♥
Meu objetivo era antes ser o garfo mais atualizado do Newtonsoft.json for Unity. A Unity Technologies já assumiu esse papel.
Este repositório concluiu sua tarefa: para fornecer newtonsoft.json. E agora é que é totalmente endortado pela própria unidade, posso depreciar alegremente esse projeto como nenhum outro.
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.
Isso ocorre porque o pacote da Unity, com.unity.nuget.newtonsoft-json
, e este pacote existe no projeto ao mesmo tempo. Isso não é suportado e não há planos diretos para fazer esse trabalho.
Infelizmente, você deve desinstalar este pacote, jillejr.newtonsoft.json-for-unity
e confiar completamente em seu pacote.
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",
Leia mais: #111 (comentário)
com.unity.nuget.newtonsoft-json
?Eu tentei tão resumi -lo da melhor maneira possível em #145
Escrevi uma documentação sobre a instalação do novo garfo oficialmente adotado (do meu garfo) de newtonsoft.json, que pode ser encontrado aqui: https://github.com/jillejr/newtonsoft.json-for-unity/wiki/install- OFICIAL-VIA-UPM
Instalação via instalador de pacotes (experimental)
Clique aqui para baixar
Install-jillejr.newtonsoft.json-for-unity-13.0.102.unitypackage
Abra o arquivo
.unitypackage
baixado no Unity. Fazia bem feita arrastando o arquivo para a janela da unidade.Clique em "Importar" para importar tudo.
Depois que o instalador tiver compilado com sucesso, ele adicionará o registro e o pacote UPM corretos ao seu projeto, seguidos pela remoção de si.
O instalador não é executado até que seu projeto possa compilar com sucesso. Certifique-se de resolver todos os erros de sintaxe e outros erros de compilação, mesmo que apenas temporariamente, para que o instalador possa ser executado.
Muito amor ❤️ para @agulha-ferramentas para fazer uma ferramenta tão boa!
Instalação via OpenUpm
openupm add jillejr.newtonsoft.json-for-unityGuia de instalação completa no Wiki: Instalação via OpenUpm
Muito amor ❤️ para @favoyang por fazer uma ferramenta tão boa!
Instalação via Pure UPM
Guia de instalação completa no Wiki: Instalação via Pure UPM
Instalação via Git no UPM
Você também pode instalar via git. Isso pressupõe que você tenha o Git instalado no seu computador.
Esta é a versão menos recomendada (mas funciona como fallback) porque:
Você não poderá atualizar o pacote através da interface do gerenciador de pacotes se instalar via Git.
Isso exige que você, seus colegas de trabalho e seus pipelines de CI/CD instalem o Git para o projeto.
Demora muito mais tempo para instalar, como a UPM, na maioria das versões, clone toda a história do projeto.
Nas versões posteriores do Unity, você pode importar diretamente através da interface do gerenciador de pacotes.
Forneça o seguinte URL:
https://github.com/jilleJr/Newtonsoft.Json-for-Unity.git#upm
Guia de instalação completa no Wiki: Instalação via Git no UPM
json.net
Agradecido por você estar lendo isso :)
Se você deseja contribuir, eis o que você pode fazer:
Espalhe a palavra! ❤ Mais usuários → Mais feedback → Eu tenho mais poder de vontade para trabalhar neste projeto. Esta é a melhor maneira de contribuir!
Abra um problema. Poderia ser uma solicitação de recurso para um novo conversor, ou talvez você tenha encontrado um bug?
Enfrentar uma das questões não atribuídas. Se parecer uma tarefa divertida de resolver e ninguém é atribuído, basta comentar e dizer que gostaria de experimentá -lo.
Sei que poucos dos problemas são triviais; portanto, se você deseja abordar algo pequeno, olhe para a lista de problemas não atribuídos no Pacote de Pacote de Conversores da Unidade.
Abra um PR com algum novo recurso ou problema resolvido. Lembre -se de perguntar antes de começar a trabalhar em qualquer coisa, para que dois dois estejam trabalhando na mesma coisa.
Ter uma solicitação de recurso ou emissão de pop -up e ter o enviado sugerindo -se adicionar posteriormente um PR para uma solução é o maior presente absoluto que um mantenedor de repositório jamais poderia receber. ?
Eu tenho esse arquivo contribuindo.md que contém algumas diretrizes. Pode ser bom lê -lo antes.
Esses documentos foram movidos para ./ci/readme.md.
Todas as solicitações de tração devem cumprir as regras de estilo de observação encontradas nos arquivos .remarkrc
nesse repo. Os arquivos .md
são fiados automaticamente por codacy, mas para executá -los localmente, você deve primeiro instalar alguns pré -requisitos:
Instale o NPM
Instale remark-cli
e alguns pacotes de estilo
# 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
Então fia longe! Por exemplo:
$ 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
Ocorrência comum o suficiente para termos uma página wiki para isso.
Leia o trabalho com filiais, seção "Mesclagem alterações da Página do Wiki repo Jamesnks".
A maioria das alterações nesse repo pode ser aplicada a todas as diferentes versões. Por exemplo, alterações no link.xml
ou bugfixes nos hotfixes do IL2CPP devem ser aplicadas a todas as diferentes versões, 10.0.3, 11.0.2, 12.0.3, etc.
Este repo possui um arquivo .backportrc.json
que é usado pela CLI SQREN/Backport para facilitar isso. É uma ferramenta que basicamente apenas usa git cherry-pick
, mas com alguns outros recursos, como criar ramificações e PRs automaticamente.
Instale Node.js: https://nodejs.org/en/download/
Instale a CLI backport
globalmente
npm install -g backport
Configure a ferramenta backport
. Ele precisa de um token de acesso ao github e nome de usuário dentro ~/.backport/config.json
.
Mais informações aqui: https://github.com/sqren/backport/blob/master/docs/configuration.md#global-config-backportConfigjson
Após uma fusão de relações públicas, o checkout master
e puxe o PR recém -mesclado que deseja fazer o backport, depois execute a CLI backport
. É interativo, então siga as etapas.
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
Este projeto, dando uma experiência estável no Newtonsoft.json para a comunidade da unidade, é um projeto de hobby para mim e sempre permanecerá livre.
Se essa ferramenta lhe dar algo que você valoriza, considere dar uma moeda de volta a essa ferramenta. Patrocine -me com uma xícara de café, eu bebo as coisas baratas! ☕
Este pacote está licenciado sob a licença do MIT (MIT)
Copyright © 2019 Kalle Jillheden (Jillejr)
https://github.com/jillejr/newtonsoft.json-for-unity
Veja direitos autorais completos em licença.md interna repositório