Repo ini adalah garpu Jamesnk/newtonsoft.json yang berisi build khusus untuk mandiri reguler, tetapi yang lebih penting target AOT seperti semua IL2CPP builds (WebGL, iOS, Android, Windows, Mac OS X) dan portabel .NET (UWP, WP8) .
Sejak akhir Februari 2022, Unity kini telah menerbitkan versi terbaru dari paket mereka : [email protected]
Paket mereka, karena v2.0.0-preview.1, adalah garpu dari NewTonsoft.json ini. Ini masih berlaku untuk rilis terbaru V3.0.1. Ini berarti bahwa dengan beralih ke paket resmi mereka, Anda akan mendapatkan:
Newtonsoft.Json.Utilities.AotHelper
Tipe I bercabang dari SaladLab yang telah menjadi bagian inti dari garpu ini sejak awal.
Semua IL2CPP saya dan kode yang dikelola mengupas perbaikan bug tertentu.
Terus gunakan garpu terkini dari newtonsoft.json, tetapi sekarang tetap terbaru oleh karyawan Unity, bukan saya.
Juga, ini praktis selalu termasuk dalam versi yang lebih baru dari persatuan karena banyak paket internal Unity bergantung padanya, jadi Anda mungkin bahkan tidak perlu menginstalnya lagi!
Saya akan terus memberikan dukungan sebanyak yang saya bisa telanjang di waktu luang saya dalam masalah dan diskusi, namun, silakan fokuskan tiket dukungan Anda pada https://forum.unity.com/, https://answers.unity.com /, dan https://issuetracker.unity3d.com/.
Untuk memulai dengan paket resmi mereka, Anda dapat mengikuti panduan instalasi saya di sini:
Menyediakan newTonsoft.json v10.0.3, v11.0.2, v12.0.3, dan v13.0.1 alternatif.
NewTonsoft.json-for- unity.converters Paket untuk mengonversi tipe persatuan, seperti vektor3, kuarternisi, warna, dan banyak lagi, banyak lagi!
Dukungan penuh untuk build IL2CPP
Dikirim melalui Unity Package Manager untuk pembaruan dan pengalihan versi yang mudah
Full newTonsoft.json.tests Test Suite lulus pada Unity 2018.4.14f1 dan 2019.2.11f1 dengan mono dan IL2CPP sebagai backend skrip.
Diusir sebagai DLL untuk build yang lebih cepat
Newtonsoft.json.utility . Kelas utilitas Aothelper untuk menyelesaikan masalah yang umum di depan waktu. (Baca lebih lanjut tentang AOT)
Dokumentasi ekstensif memecahkan masalah AOT dengan link.xml
Ya. Sekarang. Sejak Unity mengadopsi paket ini sejak akhir Februari 2022 untuk menyediakan paket newtonsoft.json yang dikelola secara resmi ke ekosistem Unity. ♥
Tujuan saya adalah sebelumnya menjadi garpu paling mutakhir dari newtonsoft.json untuk persatuan. Unity Technologies kini telah mengambil peran ini.
Repositori ini telah menyelesaikan tugasnya: untuk menyediakan newtonsoft.json. Dan sekarang itu sepenuhnya ditanggung oleh persatuan sendiri, saya dapat dengan senang hati mencela proyek ini tidak seperti yang lain.
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.
Ini karena paket Unity, com.unity.nuget.newtonsoft-json
, dan paket ini ada dalam proyek pada saat yang sama. Ini tidak didukung, dan tidak ada rencana langsung untuk membuat ini berhasil.
Anda harus dengan sedih menghapus paket ini, jillejr.newtonsoft.json-for-unity
, dan malah mengandalkan paket mereka.
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",
Baca lebih lanjut: #111 (komentar)
com.unity.nuget.newtonsoft-json
?Saya sudah mencoba merangkumnya sebaik mungkin di #145
Saya telah menulis dokumentasi tentang menginstal Fork (fork saya) yang baru diadopsi secara resmi dari newtonsoft.json, yang dapat ditemukan di sini: https://github.com/jillejr/newtonsoft.json-for-unity/wiki/install- Resmi-via-upm
Instalasi melalui penginstal paket (eksperimental)
Klik di sini untuk mengunduh
Install-jillejr.newtonsoft.json-for-unity-13.0.102.unitypackage
Buka file
.unitypackage
yang diunduh di Unity. Mudah dilakukan oleh drag'n'dropping file ke jendela Unity.Klik "Impor" untuk mengimpor semuanya.
Setelah penginstal berhasil dikompilasi, itu akan menambahkan registri UPM dan paket yang benar ke proyek Anda, diikuti dengan menghapus dirinya sendiri.
Penginstal tidak berjalan sampai proyek Anda dapat berhasil dikompilasi. Pastikan untuk menyelesaikan semua sintaks- dan kesalahan kompilasi lainnya, bahkan hanya sementara, sehingga penginstal dapat dieksekusi.
Banyak cinta ❤️ to @jarum-alat untuk membuat alat yang hebat!
Instalasi melalui OpenUpm
openupm add jillejr.newtonsoft.json-for-unityPanduan Instalasi Penuh Di Wiki: Instalasi melalui OpenUpm
Banyak cinta ❤️ ke @favoyang karena membuat alat yang hebat!
Instalasi melalui UPM murni
Panduan Instalasi Penuh Di Wiki: Instalasi melalui UPM murni
Instalasi melalui git di upm
Anda juga dapat menginstal melalui git. Ini mengasumsikan Anda telah menginstal git di komputer Anda.
Ini adalah versi yang paling tidak direkomendasikan (tetapi berfungsi sebagai fallback) karena:
Anda tidak akan dapat memperbarui paket melalui antarmuka Paket Manajer jika Anda menginstal melalui GIT.
Ini mengharuskan Anda, rekan kerja Anda, dan saluran pipa CI/CD Anda agar Git terpasang agar proyek dapat dibangun.
Butuh lebih lama untuk menginstal karena UPM di sebagian besar versi mengkloning seluruh sejarah proyek.
Dalam versi Unity yang lebih baru, Anda dapat mengimpor langsung melalui antarmuka Paket Manajer.
Suplai URL berikut:
https://github.com/jilleJr/Newtonsoft.Json-for-Unity.git#upm
Panduan Instalasi Penuh Di Wiki: Instalasi Via Git di UPM
json.net
Bersyukur bahwa Anda bahkan membaca ini :)
Jika Anda ingin berkontribusi, inilah yang dapat Anda lakukan:
Sebarkan berita! ❤ Lebih Banyak Pengguna → Lebih Banyak Umpan Balik → Saya mendapatkan lebih banyak kemauan untuk mengerjakan proyek ini. Ini adalah cara terbaik untuk berkontribusi!
Buka masalah. Bisa menjadi permintaan fitur untuk konverter baru, atau mungkin Anda telah menemukan bug?
Mengatasi salah satu masalah yang belum ditugaskan. Jika terlihat seperti tugas yang menyenangkan untuk dipecahkan dan tidak ada yang ditugaskan, maka cukup komentari dan katakan bahwa Anda ingin mencobanya.
Saya menyadari bahwa beberapa masalah itu sepele, jadi jika Anda ingin menangani sesuatu yang kecil maka lihatlah daftar masalah yang belum ditetapkan di paket konverter Unity.
Buka PR dengan beberapa fitur atau masalah baru yang terpecahkan. Ingatlah untuk bertanya sebelum mulai mengerjakan apa pun, jadi tidak ada dua yang mengerjakan hal yang sama.
Memiliki permintaan atau masalah fitur yang muncul dan meminta pengirim yang menyarankan diri mereka sendiri untuk menambahkan PR untuk solusi adalah hadiah terbesar yang mutlak yang dapat diterima oleh pemelihara repositori. ?
Saya memiliki file berkontribusi.md ini yang berisi beberapa pedoman. Mungkin bagus untuk membacanya sebelumnya.
Dokumen ini telah dipindahkan ke ./ci/readme.md.
Semua permintaan tarik harus mematuhi aturan styling Promy yang ditemukan dalam file .remarkrc
dalam repo ini. File .md
dibuang secara otomatis oleh kodasi, tetapi untuk menjalankannya secara lokal, Anda harus terlebih dahulu menginstal beberapa prasyarat:
Instal NPM
Instal remark-cli
dan beberapa paket penataan gaya
# 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
Lalu serat! Misalnya:
$ 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
Kejadian yang cukup umum sehingga kami memiliki halaman wiki hanya untuk ini.
Baca halaman wiki Working With Branch, bagian "menggabungkan dari Jamesnks repo".
Sebagian besar perubahan pada repo ini dapat diterapkan pada semua versi yang berbeda. Misalnya perubahan pada link.xml
atau perbaikan bug di perbaikan hotfix IL2CPP harus diterapkan pada semua versi yang berbeda, 10.0.3, 11.0.2, 12.0.3, dll.
Repo ini memiliki file .backportrc.json
yang digunakan oleh Sqren/Backport CLI untuk mempermudah ini. Ini adalah alat yang pada dasarnya hanya melakukan git cherry-pick
, tetapi dengan beberapa fitur lain seperti secara otomatis membuat cabang dan PR.
Instal Node.js: https://nodejs.org/en/download/
Instal backport
CLI secara global
npm install -g backport
Konfigurasikan Alat backport
. Perlu token akses GitHub dan nama pengguna di dalam ~/.backport/config.json
.
Info lebih lanjut di sini: https://github.com/sqren/backport/blob/master/docs/configuration.md#global-config-backportconfigjson
Setelah penggabungan PR, master
checkout dan tarik PR yang baru digabungkan yang ingin Anda backport, lalu jalankan backport
CLI. Ini interaktif, jadi ikuti saja langkah -langkahnya.
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
Proyek ini, memberikan pengalaman newtonsoft.json yang stabil untuk komunitas Unity, adalah proyek hobi bagi saya dan akan selalu tetap gratis.
Jika alat ini memberi Anda sesuatu yang Anda hargai, pertimbangkan untuk mengembalikan koin ke alat ini. Mensponsori saya dengan secangkir kopi, saya minum barang murah! ☕
Paket ini dilisensikan di bawah lisensi MIT (MIT)
Hak Cipta © 2019 Kalle Jillheden (Jillejr)
https://github.com/jillejr/newtonsoft.json-for-unity
Lihat Hak Cipta Lengkap di License.md Di Dalam Repositori